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
相关推荐
Pointer Pursuit2 小时前
Linux调试器 ——gdb/cgdb
linux·运维·服务器
吴声子夜歌2 小时前
Docker入门与实战——初识Docker与容器
docker·容器
天远Date Lab2 小时前
零信任架构实战:基于天远名下车辆车牌查询A构建自动化社区车位摇号核验网关
运维·人工智能·架构·自动化
xixiaoyunya2 小时前
服务器自动备份怎么做:十几分钟搭建一套稳定可监控的方案
运维·服务器
ue星空2 小时前
ALS V4 中文拆解手册
运维·nginx
JavaPub-rodert3 小时前
公共 Docker 镜像源总失效?用 Harbor Proxy Cache 自建 Docker Hub 镜像缓存
java·缓存·docker
Hello_Pyhx3 小时前
挖兔硬盘精灵 WatuDisk:从首次检测到日常检查的使用指南
运维·windows·硬盘·维护
YZ1225524 小时前
【Docker专题】使用Docker部署Vue-Flask项目前后端分离版【前端Docker部署】
前端·vue.js·docker
MrSYJ4 小时前
Docker端口映射咋做的,模拟下。
docker·云原生·kubernetes
迪康Defender5 小时前
终端安全事后追溯能力解析:本地审计模块设计思路与落地实践
运维·开发语言·人工智能·安全·php·安全威胁分析·运维开发