记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

dkTurbo自动切换Docker镜像源

dkTurbo自动切换Docker镜像源
Dockerhub:https://hub.docker.com/r/cp0204/dkturbo
Docker 镜像加速器,无法拉取 DockerHub 镜像?dkTurbo 来帮你。傻瓜式的应用可以帮你自动换源,从而使用更快的镜像加速下载。
使用
手动拉取:
XML/HTML代码
  1. #Dockerhub镜像
  2. docker pull cp0204/dkturbo:main
  3. #国内镜像
  4. docker pull registry.cn-shenzhen.aliyuncs.com/cp0204/dkturbo:main
一键运行:
XML/HTML代码
  1. # 每一项参数都是必要的,请勿随意修改除环境变量以外的参数
  2. docker run --rm --name=dkturbo -v /etc/docker:/etc/docker -v /opt:/opt -e MODE=registry -e REGISTRY=auto --pid=host --privileged registry.cn-shenzhen.aliyuncs.com/cp0204/dkturbo:main
docker-compose.yml
XML/HTML代码
  1. name: dkturbo
  2. services:
  3.   dkturbo:
  4.     image: registry.cn-shenzhen.aliyuncs.com/cp0204/dkturbo:main
  5.     container_name: dkturbo
  6.     volumes:
  7.       - /etc/docker:/etc/docker
  8.       - /opt:/opt
  9.     environment:
  10.       - MODE=registry
  11.       - REGISTRY=auto
  12.     network_mode: bridge
  13.     restart: unless-stopped
  14.     pid: host
  15.     privileged: true
启动 = 自动换源
自动测速和修改镜像源,你可以在容器日志里看工作进度。
容器停止 = 换源成功
换源后自动停止自身,并重启系统 Docker 服务,此时容器可以删除。
进阶使用
本应用提供两种加速模式,您可以根据网络环境和需求选择合适的模式:
1. registry 模式 (默认)
此模式下,应用会从指定的 registry 镜像源下载所需资源,无需配置代理,更加简单便捷。
XML/HTML代码
  1. 环境变量       值              说明
  2. MODE        registry (默认)   加速模式
  3. REGISTRY    auto (默认)       加载在线镜像列表,自动选择最快的镜像
  4.             local            使用内置列表,自动选择
  5.             your.domain.com  使用自定义镜像
  6.             none             取消镜像设置
2. proxy 模式
此模式下,docker pull 流量都会通过代理服务器,适合本地开有代理的用户。
XML/HTML代码
  1. 环境变量        值                       说明
  2. MODE        proxy                      加速模式
  3. HTTP_PROXY  默认空,例 172.17.0.1:1080   HTTP 代理服务器地址
  4. HTTPS_PROXY 默认空,例 172.17.0.1:1080   HTTPS 代理服务器地址
  5. NO_PROXY    localhost,127.0.0.1,.example.com  不经过代理的域名或IP地址
工作原理
dkTurbo 通过修改 /etc/docker/daemon.json 文件,添加或修改 registry-mirrors 和 proxies 键,以达到配置的目的。
有关 daemon.json 配置工作原理的更多信息,请参阅 Docker 官方文档:
https://docs.docker.com/docker-hub/mirror/#configure-the-docker-daemon?
https://docs.docker.com/config/daemon/proxy/#daemon-configuration?
技术细节:
通过 docker pull 运行的时间测速,选择最快的镜像源
通过 docker info 获取当前系统 Docker 配置,判断是否需要修改
通过 docker run --pid=host --privileged 取得在主机中运行命令的权限
通过 jq 安全地修改 JSON 文件(v2)
容器调用源地址:https://gist.github.com/Cp0204/4330ca3b8bc68c4a4a8d57e3982a859b
使用此镜像可以无脑使用Docker,自动更新最新可用的源。

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):