加油
努力

在阿里云的Ubuntu服务器上如何安装Docker?

在阿里云 Ubuntu 服务器上安装 Docker,推荐通过官方仓库安装最新稳定版。以下是完整步骤:


✅ 前提条件

  • 服务器为 Ubuntu 20.04/22.04(其他版本也可,但建议用 LTS)
  • 已拥有 sudo 权限
  • 网络可访问互联网(阿里云服务器默认开放公网 IP,注意安全组放行 80/443 等端口)

📦 安装步骤

1. 更新系统包索引

sudo apt update && sudo apt upgrade -y

2. 安装依赖工具(用于 HTTPS 和 GPG 密钥管理)

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

3. 添加 Docker 官方 GPG 密钥

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

4. 设置 Docker 软件源(按架构自动识别)

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

💡 提示:若使用国内镜像提速(如阿里云容器镜像服务),可将 https://download.docker.com 替换为:

https://mirrors.aliyun.com/docker-ce/linux/ubuntu

并需额外配置 docker-ce-clicontainerd.io 的源地址(见下方【可选】部分)。

5. 安装 Docker Engine、CLI 和容器运行时

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

6. 启动并启用 Docker 服务

sudo systemctl start docker
sudo systemctl enable docker

7. 验证安装

# 检查版本
docker --version

# 运行测试容器
sudo docker run hello-world

✅ 若看到欢迎信息,说明安装成功。


🔐 非 root 用户运行 Docker(可选但推荐)

避免每次都用 sudo

sudo usermod -aG docker $USER
newgrp docker   # 立即生效当前会话;或重新登录

🌏 【可选】配置阿里云镜像提速器(提升拉取速度)

  1. 登录 阿里云控制台 → 进入 容器镜像服务 ACR

  2. 创建实例(免费版即可),获取专属提速地址(如 https://xxxx.mirror.aliyuncs.com

  3. 编辑 /etc/docker/daemon.json

    {
     "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
    }

    ⚠️ 注意:JSON 格式必须合法(无尾逗号、引号匹配)

  4. 重启 Docker:

    sudo systemctl daemon-reload
    sudo systemctl restart docker

❗ 常见问题排查

问题 解决方案
permission denied while trying to connect to the Docker daemon socket 检查用户是否在 docker 组:groups $USER
拉取镜像慢 配置上述镜像提速器
containerd not found 确保安装了 containerd.io
安全组未放行? Docker 本身不监听外部端口,但若需暴露服务(如 docker run -p 80:80),需在阿里云控制台 安全组规则 中添加对应端口入方向策略

需要我提供一键脚本版本、或针对特定场景(如 Kubernetes + Docker、Docker Compose 多容器部署)的示例吗?

云服务器