本文档将指导您如何在 Debian 12 系统上安装最新版本的 Docker Engine,并配置国内镜像源以加速镜像拉取。

卸载旧版本Docker

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

设置 Docker 的 APT 仓库

更新 apt 包索引并安装必要的包,以允许 apt 通过 HTTPS 使用仓库

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

添加 Docker 的官方 GPG 密钥

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

设置 Docker 的 APT 仓库

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  • $(dpkg --print-architecture) 会自动检测您的系统架构(如 amd64, arm64)。

  • $(lsb_release -cs) 会自动获取 Debian 的代号(如 bookworm)。

安装 Docker Engine

再次更新 apt 包索引

sudo apt-get update

安装 Docker Engine, CLI, Containerd, Docker Buildx 插件和 Docker Compose 插件

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • docker-ce: Docker 社区版引擎。

  • docker-ce-cli: Docker 命令行工具。

  • containerd.io: 一个容器运行时。

  • docker-buildx-plugin: 用于构建多架构镜像的插件。

  • docker-compose-plugin: 用于定义和运行多容器 Docker 应用程序的工具(新版集成方式)。

验证 Docker 是否安装成功

sudo systemctl status docker

跑一个测试容器也可以

sudo docker run hello-world

如果看到 "Hello from Docker!" 的消息,说明安装成功。

配置 Docker 镜像源(加速器)

为了提高拉取 Docker 镜像的速度,建议配置国内的镜像源。当然国外机器没必要配置.

创建或修改 Docker 配置文件

Docker 的配置文件通常位于 /etc/docker/daemon.json。如果该文件或目录不存在,请创建它。

sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json

添加镜像源地址

{
    "registry-mirrors": [
        "https://0c105db5188026850f80c001def654a0.mirror.swr.myhuaweicloud.com",
        "https://5tqw56kt.mirror.aliyuncs.com",
        "https://docker.1panel.live",
        "http://mirrors.ustc.edu.cn/",
        "http://mirror.azure.cn/",
        "https://hub.rat.dev/",
        "https://docker.ckyl.me/",
        "https://docker.chenby.cn",
        "https://docker.hpcloud.cloud",
        "https://docker.m.daocloud.io"
    ]
}
  • 注意:这是一个 JSON 文件,请确保格式正确。

  • 您可以选择一个或多个镜像源,Docker 会按顺序尝试。以下为网络搜集:

    • 轩辕镜像:https://docker.xuanyuan.me

    • 毫秒镜像:https://docker.1ms.run

    • 阿里云:您需要登录阿里云容器镜像服务获取专属的加速器地址。

  • 保存并关闭文件

重新加载 Docker 配置并重启 Docker 服务

sudo systemctl daemon-reload
sudo systemctl restart docker

验证镜像源配置是否生效

docker info | grep Mirrors

如果输出中包含了您配置的 Registry Mirrors 地址,则表示配置成功。

(可选)将用户添加到 docker 组

默认情况下,运行 docker 命令需要 sudo 权限。为了避免每次都输入 sudo,可以将您的用户添加到 docker 用户组。

将当前用户添加到 docker

sudo usermod -aG docker $USER
  • -aG: 表示将用户追加(append)到指定组(Group)。

  • $USER: 当前登录用户的环境变量。

  • 重新登录或激活组更改

建议重新登录系统,之后,您就可以直接运行 docker 命令,无需 sudo

自建Docker加速

既然选择自建,那你的机器就必须具备可以拉取docker的网络环境,此处给出开源方案,具体安装请看文档

https://github.com/dqzboy/Docker-Proxy