- 移除可能衝突的套件
為避免與現有的 Docker 套件產生衝突,先移除以下套件:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
- 更新套件索引
確保您的套件索引是最新的:
sudo apt-get update
- 安裝必要的套件
sudo apt-get install ca-certificates curl
- 新增 Docker 的官方 GPG 金鑰
加入 Docker 的 GPG 金鑰以驗證套件:
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
- 設定 Docker 軟體套件庫
新增 Docker 官方的套件來源:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
- 安裝 Docker 套件
安裝 Docker 引擎、CLI 與 containerd:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 驗證 Docker 安裝成功
執行測試容器來確認是否安裝成功:
sudo docker run hello-world
若成功,將看到顯示 Docker 有正確安裝的訊息。
- 允許非 root 使用者執行 Docker
預設情況下,執行 Docker 命令需要使用 sudo
。若要讓您的使用者可不加 sudo 執行 Docker 指令,請將使用者加入 docker 群組:
sudo usermod -aG docker $USER
注意:這項變更會在登出並重新登入後生效,或也可以重新啟動系統:
sudo reboot
登入後再次測試:
docker run hello-world
若成功,會再次看到確認訊息,而且不需要 sudo。
安全提醒:將使用者加入 docker 群組等同於賦予 root 等級的權限,在多使用者系統上請務必小心。