Apr 17, 2020

Proxmox LXC 安裝 Docker & Docker Compose

Proxmox LXC 安裝 Docker & Docker Compose

建立 LXC

重點:

  • 勾選 Unprivileged container
  • 不要在建立後自動啟動

wp-image-551
wp-image-555
wp-image-552

設定 LXC

設定內容:Options => Features 勾選

  • keyctl
  • Nesting

以上兩個

wp-image-553
wp-image-554

啟動 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: