daemon.json–docker常用配置

原文地址:https://www.madbull.site/?p=2442

欢迎参观我的 网站 :无敌牛 -- 技术/著作/典籍/分享等

镜像加速:registry-mirrors

国内用户拉取 Docker Hub 镜像常常龟速。通过配置镜像加速器,可大幅提升速度。

复制代码
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

推荐使用网易、中科大、阿里云等提供的公共镜像加速服务。


访问私有仓库:insecure-registries

如果你的私有仓库使用 HTTP 或自签名 HTTPS 证书,Docker 默认会拒绝连接。此时需添加信任:

复制代码
{
  "insecure-registries": ["192.168.10.100:5000", "my-registry.local"]
}

注意:仅限内网或测试环境使用,生产环境应配置有效 TLS 证书。


控制容器日志:log-driver + log-opts

默认情况下,容器日志会无限增长,最终可能撑爆磁盘。通过限制日志大小,可避免此类事故:

复制代码
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  }
}

效果:每个容器最多保留 3 个日志文件,每个不超过 100MB,总日志 ≤ 300MB。


更换数据目录:data-root

Docker 默认将镜像、容器、卷等数据存放在 /var/lib/docker。如果系统盘空间小,可将其迁移到大容量磁盘:

复制代码
{
  "data-root": "/mnt/bigdisk/docker"
}

迁移前请先停止 Docker,并手动移动原有数据。


自定义网络子网:default-address-pools

Docker 默认使用 172.17.0.0/16 等网段创建 bridge 网络。若与公司内网冲突,会导致容器无法访问外部服务。可通过以下配置规避:

复制代码
{
  "default-address-pools": [
    {"base": "10.200.0.0/16", "size": 24}
  ]
}

这样新建的自定义网络将从 10.200.x.0/24 中分配子网。


启用 BuildKit(现代构建工具)

BuildKit 是 Docker 新一代构建引擎,支持并行构建、缓存优化、Secret 安全注入等高级功能。

虽然新版 Docker 已默认启用,但你仍可显式开启:

复制代码
{
  "features": {
    "buildkit": true
  }
}

之后使用 docker build 即自动使用 BuildKit。


热恢复:live-restore

当 Docker 守护进程重启时,默认会停止所有容器。启用 live-restore 后,容器将继续运行,业务无感知:

复制代码
{
  "live-restore": true
}

特别适合生产环境,提升服务可用性。

相关推荐
程序员老赵11 小时前
Docker 部署 Hue:轻松搭建数据库与数据仓库 SQL 查询平台
sql·docker·开源
m0_6174939415 小时前
昇腾 NPU Docker 部署实战:解决 stub library 报错并实现模型正常加载
运维·docker·容器
xixiaoyunya16 小时前
Docker 常用命令与实战:从入门到部署一个简单应用
docker·容器·eureka
吴声子夜歌16 小时前
Docker入门与实战——Docker Swarm模式(跨主机容器集群管理)
docker
pirateeee19 小时前
在ubuntu中通过 docker 搭建 yocto 开发环境
ubuntu·docker·eureka
墨神谕19 小时前
Docker 数据卷(Volume)详解:Dockerfile 声明、Docker Compose 挂载宿主机目录及持久化实战
运维·docker·容器
zh731419 小时前
Docker Desktop docker_data.vhdx 使用时间长了过大,解决办法
运维·docker·容器
墨神谕19 小时前
Docker Compose 从入门到实战:核心概念、YAML 配置详解、常用命令与多容器部署
运维·docker·容器
Tronlong创龙20 小时前
TLT153工控机:Docker 环境部署与容器开发实践(上)
docker·嵌入式开发·硬件开发·工业控制·工业开发板
木雷坞20 小时前
PHP两项9.2分漏洞:Docker容器更新与版本核验教程
开发语言·docker·php