Ubuntu24.04 生产环境 Docker(全国内源)

Ubuntu24.04 生产环境 Docker(全国内源)

生产要点:卸载snap‑docker,使用阿里云docker‑ce apt源,多镜像加速,开启buildkit,live‑restore容器不随dockerd重启退出,禁止一键脚本get.docker.com

0. 前置清理(必做,Ubuntu24默认可能带snap docker)

bash 复制代码
# 删除snap版本docker(生产坚决不用snap版)
sudo snap remove docker
# 清理旧apt残留
sudo apt remove -y docker docker-engine docker.io containerd runc

1. 安装依赖 + 阿里云docker‑ce GPG密钥

bash 复制代码
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

sudo install -m 0755 -d /etc/apt/keyrings
# 使用阿里云镜像的gpg
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

2. 添加【阿里云docker‑ce apt源】(下载docker包不走海外)

bash 复制代码
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3. 安装生产版docker(含compose v2插件)

bash 复制代码
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

4. 生产daemon.json配置(镜像加速+生产参数)

live‑restore:dockerd重启容器不停止;buildkit开启构建加速;多fallback镜像源,生产不要用不稳定公共代理源,优先高校公共源

bash 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.ustc.edu.cn"
  ],
  "live-restore": true,
  "features": {
    "buildkit": true
  },
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  }
}
EOF
  • log‑opts:限制容器日志单文件100M,最多3个轮转,防止磁盘打满(生产强烈建议)
  • live‑restore:dockerd重启业务容器不退出
  • buildkit:新版构建引擎

5. 启动&开机自启,重载配置

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable --now docker
sudo systemctl restart docker

6. 免sudo(生产服务器建议普通用户加入组,需要重新登录生效

bash 复制代码
sudo usermod -aG docker $USER
# 当前会话临时生效测试:newgrp docker

7. 验证全套生产环境

bash 复制代码
docker --version
docker compose version
systemctl status docker
# 查看镜像加速是否生效
docker info | grep -A5 "Registry Mirrors"
# 测试拉取镜像
docker pull hello-world

生产环境补充最佳实践

  1. 系统apt源也建议切国内源(阿里云/清华),否则apt更新慢;
  2. 云服务器优先使用云厂商专属镜像加速器地址(阿里云控制台获取,带宽更高),替换registry‑mirrors首位;
  3. 不要开启insecure‑registries跳过TLS,生产私有仓库必须https;
  4. 定期清理磁盘:docker system prune -a,注意不要在业务高峰执行;
  5. 不要使用get.docker.com脚本,生产环境apt源可控,版本可锁定。

锁定docker版本(生产防止自动升级)

bash 复制代码
sudo apt-mark hold docker-ce docker-ce-cli containerd.io docker-compose-plugin
相关推荐
lajidecrd42 分钟前
Ubuntu 24.04 LTS安装
linux·运维·ubuntu
沫璃染墨1 小时前
《从零入门Linux系统篇(二十九):文件篇·二——深入文件描述符:从文件描述符表到重定向,再到Shell实现》
linux·运维·服务器·c++·驱动开发·系统架构
竣达技术1 小时前
守护变电站直流 “生命线”|竣达 BMS‑PRO‑II 智能电池综合管理单元,让蓄电池运维看得见、管得牢
运维·监控系统·机房监控
腾讯数据架构师1 小时前
摩尔线程 GPU 怎么接入 Kubernetes 跑 DeepSeek?CubeStudio 摩尔线程(MUSA)适配实操
人工智能·云原生·容器·kubernetes·开源·mlops·maas
云上工程笔记1 小时前
2026 年 GPU 云服务器成本对比榜单:显存、算力、单小时价格和任务完成成本怎么算
运维·服务器
楠楠子呀1 小时前
号码验证技术解析:从原理到实践
运维·人工智能·ai·electron·自动化
Baron X2 小时前
Linux PAM登录告警
linux·运维·告警
团子股股东峥哥2 小时前
day27-RHEL-访问Linux文件系统
linux·运维·服务器
μθημα2 小时前
K8s Pod 管理实战:虚拟机环境下的具体命令与步骤
java·docker·kubernetes