Debian系统在云服务器上如何安装Docker?

在云服务器上的 Debian 系统中安装 Docker 是一个常见需求。以下是适用于 Debian 10、11 或 12 的标准安装步骤,推荐使用官方 Docker APT 仓库进行安装,以确保获得最新稳定版本。


✅ 步骤一:更新系统包

sudo apt update && sudo apt upgrade -y

✅ 步骤二:安装必要的依赖包

这些包允许 apt 使用 HTTPS 仓库:

sudo apt install -y 
    ca-certificates 
    curl 
    gnupg 
    lsb-release

✅ 步骤三:添加 Docker 官方 GPG 密钥

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

✅ 步骤四:设置 Docker APT 仓库

根据你的 Debian 版本(代号如 bookworm, bullseye),运行以下命令:

echo 
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

💡 $(lsb_release -cs) 会自动识别你的 Debian 代号(如 bookworm)。


✅ 步骤五:安装 Docker 引擎

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

这将安装:

  • docker-ce: Docker 社区版
  • containerd.io: 容器运行时
  • docker-compose-plugin: 支持 docker compose 命令(新版)

✅ 步骤六:验证安装

sudo docker version

或运行测试容器:

sudo docker run hello-world

如果看到欢迎信息,说明安装成功。


✅ (可选)配置非 root 用户使用 Docker

避免每次使用 sudo,将当前用户加入 docker 组:

sudo usermod -aG docker $USER

⚠️ 执行后需 重新登录(或重启 shell)才能生效。

验证:

docker run hello-world  # 不再需要 sudo

✅ (可选)启用 Docker 开机自启

sudo systemctl enable docker

🛠 常见问题排查

  1. “E: Unable to locate package docker-ce”

    • 检查 Debian 代号是否正确(如 bookworm 是 Debian 12)
    • 确保已添加 GPG 密钥和仓库
  2. 权限错误(Permission denied)

    • 确保用户已加入 docker 组并重新登录
  3. 云服务商限制

    • 某些云服务器默认内核或镜像可能缺少模块,但通常不影响 Docker 运行

✅ 推荐后续操作

  • 安装 Portainer(Docker 可视化管理工具)
  • 配置镜像提速器(如阿里云、腾讯云提速器,提升拉取速度)

例如,配置阿里云镜像提速器:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://<your-mirror-id>.mirror.aliyuncs.com"]
}
EOF
sudo systemctl restart docker

替换 <your-mirror-id> 为你的阿里云账号专属地址(登录阿里云容器镜像服务获取)


✅ 完成!你现在可以在 Debian 云服务器上愉快地使用 Docker 了。