Skip to content

Docker 安装与配置

本文覆盖各平台 Docker 安装、镜像加速器配置、免 sudo 运行,以及常见安装后问题。

Ubuntu / Debian

推荐使用官方脚本一键安装(包含 docker-cli、dockerd、compose 插件):

bash
# 卸载旧版本
sudo apt-get remove -y docker docker-engine docker.io containerd runc

# 一键安装(官方便捷脚本)
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 启动并设置开机自启
sudo systemctl enable --now docker

也可使用 apt 源安装(更可控):

bash
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
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
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
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

CentOS / RHEL

bash
# 卸载旧版本
sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

# 安装 yum-utils 并添加仓库
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 启动
sudo systemctl enable --now docker

详细 CentOS 下的 Docker 安装与镜像加速实践,可参考 CentOS Docker

Windows

  • 推荐:安装 Docker Desktop for Windows,需开启 WSL2 后端(Windows 10/11 专业版/家庭版均可)。
  • 安装后在 PowerShell 中验证:
powershell
docker version
docker run hello-world

macOS

镜像加速配置

由于网络原因,拉取官方镜像常超时。配置国内镜像加速器可显著提升速度。编辑 /etc/docker/daemon.json

bash
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

验证是否生效:

bash
docker info | grep -A 5 "Registry Mirrors"

免 sudo 运行(将当前用户加入 docker 组)

默认需要 sudo 才能执行 docker 命令。将用户加入 docker 组后可免 sudo:

bash
sudo usermod -aG docker $USER
# 重新登录或执行以下命令使组生效
newgrp docker
docker run hello-world

安全提示:docker 组等价于 root 权限(可挂载 / 读写宿主机),仅应在可信环境配置。

安装后排查

bash
# 守护进程状态
sudo systemctl status docker

# 查看 daemon 配置与驱动
docker info

# 磁盘占用
docker system df

最佳实践

  1. 固定版本安装(生产环境避免 latest,明确指定 docker-ce=5:24.0.x)。
  2. 配置镜像加速器,减少拉取失败。
  3. 配置日志轮转,避免 /var/lib/docker 被日志打满(见 Docker 存储)。
  4. 生产环境建议单独挂载大容量磁盘到 /var/lib/docker