Docker引擎配置和容器镜像加速
- 2024-06-13 21:18:00
- 丁国栋
- 原创 532
Docker引擎(提供 docker 命令(区分于 crictl))是一个非常好用的容器工具,可以用来做很多有趣的事情,包括快速测试和构建一致的开发测试环境。
但要想使用好它必须经过一些最基本的配置,可以通过创建并编辑 /etc/docker/daemon.json 文件进行配置。
下面是一个基本的配置。
{
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"registry-mirrors": ["https://docker.example.com/"]
}
释义:
live-restore 允许可以重启docker引擎,但不影响运行中的容器;log-driver 指定容器日志格式为json;
log-opts 里分别使用max-size和max-file指定了日志文件大小和数量;
registry-mirrors 指定了容器镜像的镜像地址;
这样的基本配置就足够了。
因为众所周知的原因,Docker官方的镜像仓库 hub.docker.com 无法访问并拉取镜像,因此我们需要通过网络代理来访问。
参考地址:https://docs.docker.com/config/daemon/proxy/
处理方法:
- 打开并编辑文件
/etc/docker/daemon.json - 添加以下内容:
"proxies": {
"http-proxy": "socks5://10.8.1.7:3127",
"https-proxy": "socks5://10.8.1.7:3127",
"no-proxy": "127.0.0.0/8,ccr.ccs.tencentyun.com"
}
使用镜像加速(代理服务),例如这个项目:https://github.com/DaoCloud/public-image-mirror/tree/main。
使用方法:
docker run -d -P m.daocloud.io/docker.io/library/nginx # 或 docker run -d -P m.daocloud.io/library/nginx
添加到 /etc/docker/daemon.json
{
"registry-mirrors": [
"https://docker.m.daocloud.io"
]
}
一个完整的例子:
# /etc/docker/daemon.json
cat >/etc/docker/daemon.json<<'eof'
{
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"proxies": {
"http-proxy": "socks5://10.8.1.7:3127",
"https-proxy": "socks5://10.8.1.7:3127",
"no-proxy": "127.0.0.0/8,ccr.ccs.tencentyun.com"
}
}
eof
--
发表评论