💡 本教程适用于 Kali Linux(基于 Debian)以及 Debian / Ubuntu 系统。
⚠️ 重要背景:截至 2025 年,国内公开 Docker 镜像加速服务已基本不可用:
- 清华、中科大镜像加速服务 已停用
- 网易
hub-mirror.c.163.com无官方维护,常返回超时或 403- 阿里云镜像加速器 仅限阿里云 ECS 等云产品使用,本地机器被明确排除
✅ 推荐优化方案:配置 Docker 代理(如有)> 手动导入镜像 > 直连(无加速)
一、卸载旧版本(如有)
Bash
sudo apt remove docker docker-engine docker.io containerd runc
如果提示“未安装”,可忽略。
二、使用清华镜像源安装 Docker(仅用于安装包)
✅ 说明:清华的 Docker 软件包仓库(用于安装
docker-ce)仍可用,但 Docker Hub 镜像加速服务已停用。
1. 安装依赖
Bash
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
2. 添加清华 GPG 公钥
Bash
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL 'https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg' | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
3. 设置仓库(兼容 Kali)
Bash
CODENAME=$(grep -oP '^VERSION_CODENAME=\K.*' /etc/os-release)
[ "$CODENAME" = "kali-rolling" ] && CODENAME="bookworm"
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian $CODENAME stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4. 安装 Docker 与 Compose
Bash
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
三、国内网络优化方案(按推荐优先级排序)
📌 不优化 = 拉取 Docker Hub 镜像极慢、超时或失败。
以下方案按 可靠性 & 可用性 排序。
✅ 方案 1:配置 HTTP/HTTPS 代理(最有效,如有代理)
如果你有 科学上网代理(如 Clash、V2Ray、Shadowsocks 提供的 HTTP 代理),可通过 systemd 配置 Docker 使用代理。
步骤:
Bash
# 创建 systemd 配置目录
sudo mkdir -p /etc/systemd/system/docker.service.d
# 创建代理配置文件(替换 your-proxy-ip:port)
sudo tee /etc/systemd/system/docker.service.d/proxy.conf <<EOF
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"
EOF
# 重载并重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
💡 代理端口常见值:
- Clash:
7890- V2RayN:
10809- Shadowsocks:
1080✅ 优点:完全绕过国内网络限制,拉取速度极快
📌 适用:有合法合规代理环境的用户
⚠️ 方案 2:使用阿里云镜像加速器(仅限阿里云 ECS 等云服务器)
❌ 本地机器(Kali 虚拟机、个人 PC)无法使用!
根据 阿里云官方公告(2024-07-02 生效):
- 仅限 阿里云用户在 支持公网访问的阿里云产品(如 ECS、ACK)上使用
- 不支持 本地开发机、家庭网络、非阿里云服务器
- 即使配置正确,本地使用会返回 403 Forbidden
如果你在 阿里云 ECS 上:
Bash
# 1. 获取加速地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
# 2. 配置
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"]
}
EOF
sudo systemctl restart docker
📌 本地用户请跳过此方案。
⚠️ 方案 3:使用网易镜像加速(不推荐,可能失效)
Bash
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://hub-mirror.c.163.com"]
}
EOF
sudo systemctl restart docker
可能问题:
i/o timeout:服务无响应403 Forbidden:IP 被限流- 无官方维护,随时可能完全失效
📢 仅建议临时测试,生产环境勿用。
✅ 方案 4:手动导入镜像(无网络依赖,完全可靠)
适用于离线或镜像拉取失败场景。
步骤:
Bash
# 在网络良好的机器上
docker pull hello-world
docker save hello-world:latest -o hello-world.tar
# 将 tar 文件拷贝到 Kali
docker load -i hello-world.tar
docker run --rm hello-world
✅ 优点:100% 可控,无网络依赖
📌 适合:靶机渗透测试、CTF、离线环境
✅ 方案 5:直接拉取(无加速,基础方案)
移除所有加速配置,依赖 Docker 官方源:
Bash
sudo rm -f /etc/docker/daemon.json
sudo systemctl restart docker
docker run --rm hello-world
⚠️ 首次拉取可能较慢(30 秒~数分钟),但通常能成功
✅ 适合:偶尔使用、测试环境
四、配置免 sudo 使用 Docker
Bash
sudo usermod -aG docker $USER
newgrp docker # 或重新登录
五、验证安装
Bash
docker --version
docker compose version
docker run --rm hello-world
六、附:一键安装脚本(无镜像加速,用户按需配置代理)
Bash
#!/bin/bash
# Docker 一键安装脚本(2025 年安全版)
# 不配置任何镜像加速,避免 403/timeout
# 作者:renme
# 日期:2025-12-09
set -e
echo "[*] 卸载旧版本..."
sudo apt remove -y docker docker-engine docker.io containerd runc 2>/dev/null || true
echo "[*] 安装依赖..."
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
echo "[*] 添加清华 GPG 密钥(仅用于安装包)..."
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL 'https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg' | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "[*] 配置清华软件仓库..."
CODENAME=$(grep -oP '^VERSION_CODENAME=\K.*' /etc/os-release 2>/dev/null || echo "bookworm")
[ "$CODENAME" = "kali-rolling" ] && CODENAME="bookworm"
ARCH=$(dpkg --print-architecture)
echo "deb [arch=$ARCH signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian $CODENAME stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
echo "[*] 安装 Docker..."
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
echo "[*] 添加当前用户到 docker 组..."
sudo usermod -aG docker $USER
echo ""
echo "✅ Docker 安装完成!"
echo ""
echo "🌐 国内网络优化建议(按优先级):"
echo " 1. 【推荐】如有代理,配置 systemd 代理(见文档)"
echo " 2. 【可靠】手动拉取镜像并导入(docker save/load)"
echo " 3. 【基础】直接拉取(无加速,可能较慢)"
echo ""
echo "❌ 避免使用:"
echo " - 清华/中科大镜像加速(已停用)"
echo " - 网易 hub-mirror.c.163.com(不稳定)"
echo " - 阿里云加速器(本地机器不支持,会 403)"
echo ""
echo "🔍 验证:docker run --rm hello-world"
📚 参考资料:
最后更新:2025年12月9日
适用系统:Kali Linux, Debian 11/12, Ubuntu 20.04+