Apr 17, 2020
Proxmox LXC 安裝 Docker & Docker Compose

建立 LXC
重點:
- 勾選 Unprivileged container
- 不要在建立後自動啟動



設定 LXC
設定內容:Options => Features 勾選
- keyctl
- Nesting
以上兩個


啟動 LXC & 新增使用者
啟動後 SSH 進 LXC
ssh root@server_ip_address
安裝 sudo
apt update
apt install sudo
新增使用者
自行替換 username
adduser username
把剛創建的使用者加入 sudo 群組
usermod -aG sudo username
sudo 不需輸入密碼(可選)
開啟設定檔:
visudo
更改為不需輸入密碼
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
切換使用者 & 測試 sudo
切換使用者:
su - username
測試 sudo
sudo whoami
輸出:username 的話就代表成功了!
安裝 Docker & Docker Compose
使用剛剛創建的使用者執行以下步驟
前置步驟
更新(2026):
apt-key已在 Debian 12(bookworm)移除。以下指令已改用官方建議的 keyrings 方式。Docker Compose 也改用 apt 套件(docker-compose-plugin),不再需要手動下載二進位檔。
更新 source
sudo apt update
sudo apt install \
ca-certificates \
curl \
gnupg
建立 keyrings 目錄並加入 Docker 官方 GPG key
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
加入 Docker 官方 repository
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo $VERSION_CODENAME) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安裝 Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
測試:
docker version
有跑出版本資訊就成功了
將使用者加入 docker 群組(可選)
可以不使用 sudo 直接執行 docker。加入群組後需要重新登入才會生效。
sudo usermod -aG docker $USER
安裝 Docker Compose
安裝 Docker Compose plugin(指令為 docker compose,中間沒有 -)
sudo apt-get update
sudo apt-get install docker-compose-plugin
確認安裝
docker compose version
有跑出版本資訊就成功了
結語
以上就是在 Proxmox LXC 安裝 Docker & Docker Compose 的方法
至於要新增一個使用者而不直接使用 root 帳號主要有兩個原因
- 安全性問題,Docker 官方也建議不要使用 root 帳號
- 有些 image 如果用 root 跑的話會有權限問題
如果有其他問題,歡迎在下面留言!
Tags: