1. 环境信息

项目
操作系统 Ubuntu 22.04.1 LTS (Jammy)
内核版本 5.15.0-164-generic
存储位置 /var/lib/docker (根分区,282G可用)
文件系统 XFS

2. 安装方案概述

2.1 安装方式

采用 Docker 官方 APT 仓库安装,确保获取最新稳定版本和安全更新。

2.2 安装组件

组件 说明
docker-ce Docker Engine 社区版
docker-ce-cli Docker 命令行工具
containerd.io 容器运行时
docker-buildx-plugin 构建扩展插件
docker-compose-plugin Docker Compose V2 插件

2.3 生产级配置

配置项 设置 说明
存储驱动 overlay2 Ubuntu 默认,性能最优
日志驱动 json-file 默认驱动,配置轮转限制
日志大小限制 100MB/文件,3个文件 防止日志占满磁盘
开机自启 启用 systemd 管理
用户权限 当前用户加入 docker 组 免 sudo 运行
镜像加速 国内镜像源 加速镜像拉取

3. 实施步骤

3.1 卸载旧版本(如有)

sudo apt-get remove -y docker docker-engine docker.io containerd runc 2>/dev/null || true

3.2 安装依赖包

sudo apt-get update
sudo apt-get install -y \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

3.3 添加 Docker 官方 GPG 密钥

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
sudo chmod a+r /etc/apt/keyrings/docker.gpg

3.4 添加 Docker APT 仓库

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

3.5 安装 Docker Engine

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

3.6 配置 Docker Daemon(生产级配置)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json > /dev/null <<EOF
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  },
  "storage-driver": "overlay2",
  "live-restore": true,
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker.xuanyuan.me"
  ]
}
EOF

配置说明:

参数 说明
log-driver 日志驱动,json-file 为默认
max-size 单个日志文件最大 100MB
max-file 最多保留 3 个日志文件
storage-driver 存储驱动,overlay2 性能最优
live-restore 容器在 daemon 重启时保持运行
registry-mirrors 国内镜像加速器地址

3.7 启动 Docker 并设置开机自启

sudo systemctl daemon-reload
sudo systemctl enable docker
sudo systemctl start docker

3.8 配置用户权限

sudo usermod -aG docker $USER

注意: 执行后需要重新登录或执行 newgrp docker 使权限生效。

3.9 验证安装

# 检查 Docker 版本
docker --version

# 检查 Docker Compose 版本
docker compose version

# 检查 Docker 服务状态
sudo systemctl status docker

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

4. 验证清单

检查项 预期结果 命令
Docker 版本 显示版本号 docker --version
Compose 版本 显示版本号 docker compose version
服务状态 active (running) systemctl status docker
开机自启 enabled systemctl is-enabled docker
用户权限 免 sudo 运行 docker ps
存储驱动 overlay2 docker info | grep "Storage Driver"
测试容器 Hello from Docker! docker run --rm hello-world

5. 常用命令参考

# 查看 Docker 详细信息
docker info

# 查看运行中的容器
docker ps

# 查看所有容器
docker ps -a

# 查看镜像列表
docker images

# 清理未使用资源
docker system prune -a

# 查看磁盘使用情况
docker system df

6. 故障排查

6.1 服务启动失败

sudo journalctl -xeu docker.service

6.2 权限问题

# 确认用户在 docker 组
groups $USER

# 重新加载组权限
newgrp docker

6.3 网络问题

# 检查 Docker 网络
docker network ls

# 重置 Docker 网络
sudo systemctl restart docker

7. 文档信息

项目
创建时间 2026-01-10
目标系统 Ubuntu 22.04.1 LTS
Docker 版本 29.1.4
Docker Compose 版本 v5.0.1
containerd 版本 2.2.1
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐