🐳 Docker 完整安装与优化指南

本文档提供在 Linux 环境下从零开始安装最新版 Docker Engine 及 Docker Compose 的完整步骤。包含系统清理、官方仓库配置、服务启动以及国内镜像源优化。

1. 卸载旧版本(可选)

如果系统中曾安装过旧版本的 Docker(如 docker, docker.io, docker-engine),为避免产生冲突,请先执行完整卸载。如果是纯净系统可直接跳过此步。

对于 Ubuntu / Debian 系统:

sudo apt-get remove docker docker-engine docker.io containerd runc

对于 CentOS 系统:

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

2. 安装 Docker Engine 与 Compose 插件

推荐使用 Docker 官方存储库进行安装,以确保始终获取最新且稳定的版本。请根据您的服务器操作系统选择对应的完整安装步骤。

方案 A:Ubuntu 系统完整安装步骤

  1. 更新 apt 包索引并安装基础依赖:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
  1. 添加 Docker 官方的 GPG 密钥:
sudo mkdir -p /etc/apt/keyrings
curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg) | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  1. 写入稳定版软件源配置:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] [https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu) $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. 再次更新包索引并安装 Docker 核心组件及 Compose 插件:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

方案 B:CentOS 系统完整安装步骤

  1. 安装 yum-utils 依赖工具:
sudo yum install -y yum-utils
  1. 添加 Docker 官方稳定版软件仓库:
sudo yum-config-manager --add-repo [https://download.docker.com/linux/centos/docker-ce.repo](https://download.docker.com/linux/centos/docker-ce.repo)
  1. 安装 Docker 核心组件及 Compose 插件:
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

3. 启动服务并设置开机自启

安装完成后,Docker 服务通常不会自动启动。需要手动启动 Docker 服务,并将其设置为随系统开机自动启动。

sudo systemctl start docker
sudo systemctl enable docker

执行以下命令验证安装结果。若终端输出 Hello from Docker! 即代表 Docker 引擎已成功运行:

sudo docker run hello-world

4. 核心优化:配置镜像加速与日志限制

国内直接拉取 Docker Hub 官方镜像速度较慢,且容器长期运行产生的日志极易占满服务器磁盘空间。强烈建议配置国内加速源及全局日志轮转限制。

请直接复制并执行以下完整命令,系统将自动创建配置文件并重启 Docker 使配置生效:

sudo mkdir -p /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "registry-mirrors": [
    "[https://docker.m.daocloud.io](https://docker.m.daocloud.io)",
    "[https://dockerproxy.com](https://dockerproxy.com)",
    "[https://registry.docker-cn.com](https://registry.docker-cn.com)"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "20m",
    "max-file": "3"
  }
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker