Docker引擎配置和容器镜像加速
- 2024-06-13 21:18:00
- 丁国栋
- 原创 229
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 { "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" } }
另外提供一些Docker容器镜像加速地址。例如
https://docker.credclouds.com/ 感谢
李晓辉
同学。
|
|
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
另外阿里云上的镜像加速服务目前还是可用的,也可以尝试使用。
配置示例:
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": [ "https://docker.credclouds.com", "https://k8s.credclouds.com", "https://quay.credclouds.com", "https://gcr.credclouds.com", "https://k8s-gcr.credclouds.com", "https://ghcr.credclouds.com" ] } EOF sudo systemctl daemon-reload sudo systemctl restart docker.service
发表评论