Debian 13 安装 Docker 指南

在 Debian 13 (trixie) 上通过阿里云 docker-ce 源在线安装,以及离线 deb 包、离线静态二进制包安装 Docker CE 29.7.2,并配置国内镜像加速、systemd 管理。所有命令与回显均为 Debian 13 实测结果

debiandebianLinux系统2026/09/29

Debian 13 安装 Docker 指南

目标:在 Debian 13(trixie)上通过阿里云 docker-ce 源在线安装,以及离线 deb 包、离线静态二进制包安装 Docker CE 29.7.2,并配置国内镜像加速、使用 systemd 管理服务。所有命令与回显均为 Debian 13 实测结果。

一、环境信息

  • 操作系统:Debian GNU/Linux 13(VERSION_ID=13,代号 trixie)
  • 架构:amd64
  • 包管理器:apt / dpkg
  • Docker:Docker CE 29.7.2(docker-ce 5:29.7.2-1debian.13trixie)
  • 运行时:containerd.io 2.3.3
  • 辅助插件:docker-compose-plugin 5.5.0-1、docker-buildx-plugin 0.36.1-1
  • 数据目录:/var/lib/docker(默认),存储驱动 overlay2(默认)

二、前置条件

apt-get update
apt-get install -y apt-transport-https ca-certificates curl gnupg iptables nftables
Reading package lists... Done

内核要求 Linux 3.10 以上并支持 cgroup(Debian 13 默认内核与 cgroup v2 均满足)。安装前先确认是否已装,避免重复安装:

docker version

未安装时输出 command not found,需按下文方案安装。

三、版本选型说明

来源版本说明
官方稳定版29.7.2Docker 官方 docker-ce 最新稳定版
阿里云 docker-ce 源29.7.2与官方同步,国内可达性好,实测选用
Debian 官方源docker.io 旧版仅提供 docker.io 老版本,功能不完整,不推荐

实测选择阿里云 docker-ce 源安装 29.7.2。Debian 13 的 trixie 通道阿里云已提供,无需降级到旧代号。

四、在线安装方案(阿里云 docker-ce 源,推荐)

4.1 安装依赖并导入 Docker GPG 密钥

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg

4.2 添加阿里云 docker-ce 源(Debian 13 用 trixie 通道)

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian trixie stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update

写入后的源内容(实测):

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian trixie stable

4.3 安装 Docker

apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Unpacking docker-ce-cli (5:29.7.2-1~debian.13~trixie) ...
Unpacking docker-ce (5:29.7.2-1~debian.13~trixie) ...
Unpacking containerd.io (2.3.3-1~debian.13~trixie) ...
Unpacking docker-buildx-plugin (0.36.1-1~debian.13~trixie) ...
Unpacking docker-compose-plugin (5.5.0-1~debian.13~trixie) ...
Setting up docker-buildx-plugin (0.36.1-1~debian.13~trixie) ...
Setting up containerd.io (2.3.3-1~debian.13~trixie) ...
Setting up docker-compose-plugin (5.5.0-1~debian.13~trixie) ...
Setting up docker-ce-cli (5:29.7.2-1~debian.13~trixie) ...
Setting up docker-ce (5:29.7.2-1~debian.13~trixie) ...

4.4 systemd 托管与开机自启

systemctl enable docker
systemctl start docker
systemctl is-active docker
Synchronizing state of docker.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable docker
Created symlink '/etc/systemd/system/multi-user.target.wants/docker.service' → '/usr/lib/systemd/system/docker.service'.
active

4.5 查看版本

docker --version
docker compose version
containerd --version
Docker version 29.7.2, build a7dcaa6
Docker Compose version v5.5.0
containerd containerd v2.3.3 aad11006b869517fcd3009450b6f82da282e1a9b

💡 国内网络下 get.docker.com 官方一键脚本偶发连接被重置,一键脚本会自动改用阿里云镜像源,可作备选:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun。

五、离线安装方案(内网/离线)

5.1 离线 deb 包安装

在联网机器上下载 deb 包(实测 docker-ce 23 MB、docker-ce-cli 17 MB、containerd.io 22 MB 等):

mkdir -p /var/cache/docker-debs && cd /var/cache/docker-debs
apt-get download docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Get:1 https://mirrors.aliyun.com/docker-ce/linux/debian trixie/stable amd64 docker-ce-cli amd64 5:29.7.2-1~debian.13~trixie [17.0 MB]
Get:2 https://mirrors.aliyun.com/docker-ce/linux/debian trixie/stable amd64 docker-ce amd64 5:29.7.2-1~debian.13~trixie [24.0 MB]
Fetched 41.0 MB in 1min 41s (407 kB/s)
W: Download is performed unsandboxed as root as file '/tmp/dd/docker-ce-cli_5%3a29.7.2-1~debian.13~trixie_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

💡 需把依赖闭包一并下载(iptables、nftables、libseccomp2 等),确保离线机无需第三方网络。

把 deb 拷入离线机后安装:

cd /path/to/debs
dpkg -i *.deb
apt-get install -f

⚠️ 实测:直接 dpkg -i 时 docker-ce 会因缺 iptables、nftables 依赖而配置失败,执行 apt-get install -f 补齐依赖后即可完成配置。

5.2 离线静态二进制包安装(tgz)

Docker 官方静态包内含 dockerd、docker、containerd、runc、ctr 等,解压到 /usr/bin 即可运行。实测下载 docker-29.7.2.tgz(82 MB):

# 1. 联网机器上下载静态包(download.docker.com 国内可能被重置,可用阿里云镜像站)
curl -fsSLo docker.tgz https://mirrors.aliyun.com/docker-ce/linux/static/stable/x86_64/docker-29.7.2.tgz

# 2. 解压并将二进制拷到 /usr/bin
tar xzf docker.tgz
cp docker/* /usr/bin/

# 3. 静态包不含 iptables/nftables,缺失时先安装
apt-get install -y iptables nftables

# 4. 配置 systemd 后启动
systemctl enable docker && systemctl start docker

# 5. 验证
docker --version
-rw-r--r-- 1 root root 82M Oct 10 00:20 docker.tgz
docker/
docker/ctr
docker/docker-init
docker/containerd
docker/docker
docker/runc
docker/containerd-shim-runc-v2
docker/dockerd
docker/docker-proxy
Docker version 29.7.2, build a7dcaa6

💡 静态包自带 containerd(v2.3.3)与 runc,无需额外安装;无 systemd 的环境可 nohup dockerd > /var/log/dockerd.log 2>&1 & 后台启动。

5.3 方案对照表

方案适用场景优点缺点
阿里云源在线安装可联网服务器一键安装、自动生成 systemd 单元、易升级依赖外网
离线 deb 包内网/隔离网络版本可控、dpkg 管理完整依赖闭包需手动收集
离线静态 tgz内网/无 dpkg 环境单个文件、解压即用需自带 iptables/nftables

六、配置说明

Docker 守护进程配置文件位于 /etc/docker/daemon.json,常用键:

键说明
registry-mirrors镜像加速地址数组
data-root数据目录(默认 /var/lib/docker)
storage-driver存储驱动(真实服务器默认 overlay2)
log-driver / log-opts日志驱动与参数

默认的 Docker Hub 国内访问缓慢,写入镜像加速:

mkdir -p /etc/docker
cat > /etc/docker/daemon.json <<'EOF'
{
  "registry-mirrors": ["https://docker.1ms.run", "https://docker.m.daocloud.io"]
}
EOF
systemctl restart docker

确认加速生效:

docker info | grep -A1 "Registry Mirrors"
Registry Mirrors:
  https://docker.1ms.run/

七、验证运行

docker run --rm hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

当前用户加入 docker 组(免 sudo 调用):

usermod -aG docker root

💡 加入后需重新登录(或执行 newgrp docker)使权限生效。

八、常见问题(FAQ)

Q1:get.docker.com 连接被重置怎么办? 国内网络常见,重试或改用四章阿里云源;一键脚本会自动切换阿里云镜像。

Q2:离线 dpkg 报依赖缺失? docker-ce 依赖 iptables/nftables,离线需把依赖闭包一起携带(见 5.1),再执行 apt-get install -f。

Q3:静态二进制包启动报 iptables not found? 静态包不含网络工具,装 iptables nftables,或临时 dockerd --iptables=false 启动。

Q4:日志出现 failed to mount overlay: invalid argument? 特殊/受限内核环境下 overlay 挂载失败时,dockerd 自动回退 vfs 存储驱动,服务仍可正常启动;真实物理机默认使用 overlay2,无需处理。

Q5:镜像拉取慢或超时? 确认 daemon.json 已配置镜像加速并 systemctl restart docker;可多配置几个镜像地址轮换。

九、卸载方式

systemctl stop docker
apt-get remove -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
rm -rf /var/lib/docker /etc/docker /etc/apt/sources.list.d/docker.list /etc/apt/keyrings/docker.gpg

十、参考链接