在阿里云轻量服务器上如何安装和配置Docker?

在阿里云轻量应用服务器(Simple Application Server, SAS)上部署 Docker 是非常常见的操作,尤其适合个人开发者、小型项目或测试环境。由于轻量服务器通常运行的是精简版的 Linux 发行版(如 CentOS Stream、Ubuntu、Debian 等),安装过程相对标准,但需要注意网络源和内核兼容性问题。

以下是基于主流 Linux 发行版(以 Alibaba Cloud Linux 3 / CentOS Stream 和 Ubuntu 20.04/22.04 LTS 为例)的完整安装与配置指南。


一、前置准备

  1. 登录服务器

    • 通过 SSH 客户端连接你的轻量服务器。
    • 确保你有 sudo 权限(root 用户或具有 sudo 权限的用户)。
  2. 系统更新

    # Alibaba Cloud Linux / CentOS
    sudo yum update -y
    
    # Ubuntu / Debian
    sudo apt update && sudo apt upgrade -y
  3. 确认内核版本
    Docker 要求内核版本 ≥ 3.10,建议使用较新的稳定内核。

    uname -r

二、卸载旧版本(如有)

如果之前安装过旧版 Docker 或 docker-engine,建议先清理:

sudo yum remove docker 
    docker-client 
    docker-client-latest 
    docker-common 
    docker-latest 
    docker-latest-logrotate 
    docker-logrotate 
    docker-engine

# Ubuntu 类似命令
sudo apt-get remove docker docker-engine docker.io containerd runc

⚠️ 注意:卸载不会删除镜像、容器、卷或自定义配置文件,数据仍保留在 /var/lib/docker。


三、安装 Docker Engine

推荐使用官方仓库安装,确保获取最新稳定版本。

方案 A:使用阿里云镜像源提速(推荐国内用户)

由于默认 Docker 官方源在国内访问较慢,可替换为阿里云镜像源。

1. 安装依赖
# Alibaba Cloud Linux / CentOS
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# Ubuntu / Debian
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
2. 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/static/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
3. 设置稳定版仓库(使用阿里云镜像)
# 创建仓库文件
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 对于 Alibaba Cloud Linux / CentOS,需手动构建 repo 文件:
cat <<EOF | sudo tee /etc/yum.repos.d/docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - Alibaba Cloud
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$(uname -r)/x86_64/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF

📌 注意:Alibaba Cloud Linux 3 基于 CentOS Stream 9,路径可能略有不同,若上述 repo 无效,可尝试使用 CentOS 9 的路径或改用 dnf。

4. 安装 Docker
# Ubuntu
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

# Alibaba Cloud Linux / CentOS
sudo yum install -y docker-ce docker-ce-cli containerd.io

四、启动并启用 Docker 服务

sudo systemctl start docker
sudo systemctl enable docker

验证安装是否成功:

docker --version
sudo docker run hello-world

如果看到 “Hello from Docker!” 输出,说明安装成功。


五、配置非 root 用户使用 Docker(可选但推荐)

默认情况下,只有 root 用户可以运行 Docker 命令。为避免频繁使用 sudo,可将当前用户加入 docker 组:

sudo groupadd docker
sudo usermod -aG docker $USER

⚠️ 需要重新登录或执行 newgrp docker 使组生效。


六、优化配置(针对轻量服务器资源有限场景)

轻量服务器内存较小(如 2GB),建议进行以下优化:

1. 限制 Docker 资源使用

编辑 /etc/docker/daemon.json:

{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  },
  "storage-driver": "overlay2",
  "live-restore": true,
  "default-ulimits": {
    "nofile": {
      "Name": "nofile",
      "Hard": 65536,
      "Soft": 65536
    }
  }
}

然后重启 Docker:

sudo systemctl restart docker

2. 启用 Swap(可选,防止 OOM)

轻量服务器若无 Swap,容器可能因内存不足被杀。可临时增加 Swap:

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

七、安全与防火墙配置

阿里云轻量服务器自带安全组规则,需在控制台开放所需端口(如 80、443、3306 等)。

Docker 本身不直接监听外部端口,除非你映射了端口(如 -p 80:80)。因此:

  1. 不要关闭 firewalld/ufw,保持默认策略。
  2. 仅通过安全组开放必要端口。
  3. 避免将 Docker API 暴露到公网(默认 Unix socket,无风险)。

八、常见问题排查

问题 解决方案
Cannot connect to the Docker daemon 检查 systemctl status docker,确保服务运行;检查权限。
permission denied 确认用户已加入 docker 组并重新登录。
拉取镜像慢 配置阿里云镜像提速器:
{"registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"]} 加入 /etc/docker/daemon.json
容器启动失败 查看日志:docker logs <container_name>

九、补充:使用 Docker Compose(可选)

若需管理多容器应用,建议安装 Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

总结

在阿里云轻量服务器上安装 Docker 的核心步骤为:

  1. 更新系统;
  2. 配置阿里云镜像源提速;
  3. 安装 Docker CE、CLI、Containerd;
  4. 启动服务并设置开机自启;
  5. 优化资源限制与安全策略。

此方案适用于绝大多数轻量服务器场景,兼顾性能、安全与易用性。如需更高可用性,建议后续迁移至 ECS 集群或使用 ACK(容器服务 Kubernetes 版)。

未经允许不得转载:CLOUD云枢 » 在阿里云轻量服务器上如何安装和配置Docker?