卸载旧版本(如有)
如果系统有旧版Docker(如 docker, docker.io, docker-engine),先卸载:
sudo apt remove docker docker-engine docker.io containerd runc
安装依赖工具
更新包索引并安装必要工具:
sudo apt update
sudo apt install ca-certificates curl gnupg
添加Docker官方GPG密钥
添加Docker的APT仓库密钥:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
添加Docker APT仓库
添加稳定版仓库到APT源列表:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装Docker引擎
更新包索引并安装Docker:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
验证安装
启动Docker服务并测试:
sudo systemctl start docker
sudo docker run hello-world
若看到 Hello from Docker! 说明安装成功。
(可选)免sudo运行Docker
将当前用户加入 docker 用户组:
sudo usermod -aG docker $USER
newgrp docker # 刷新用户组(或重新登录)
之后运行 docker 命令无需 sudo。
设置开机自启
sudo systemctl enable docker
常见问题解决
- GPG密钥错误:确保步骤3中的密钥安装正确。
- 找不到包:检查步骤4的仓库路径(如Ubuntu代号
jammy/focal是否正确)。 - 权限问题:执行
newgrp docker或重启终端。