Docker 下载工具
近期docker下载镜像很不稳定,时不时出现下载不了的情况,这几天更是出现完全无法下载不了的情况
项目里刚好用到docker,索性花了点时间用golang开发了一个小工具, 不出意外,全网最快的docker下载工具, 兼容arm架构,nas用户也可以玩, 支持windows、linux,也支持在docker套娃(容器里更新镜像)
源码
https://github.com/lianshufeng/docker-pull
特性
- 支持线程
- 支持断点续传
- 支持缓存
- 支持代理
- 支持镜像
- 兼容v1和v2协议 - https://docs.docker.com/registry/
基础
docker-pull [-config] <imageName>
eg : docker-pull -proxy http://127.0.0.1:1080 -thread 5 nginx
-architecture string
platform.architecture (default "amd64")
-buffByte int
download buffByte (default 10485759)
-cache string
cache directory (default "_cache")
-docker_api_version string
DOCKER_API_VERSION (default "1.30")
-load
load image (default true)
-m string
mirror url , docker.chatsbot.org
-os string
platform.os (default "linux")
-proxy string
proxy server , http://127.0.0.1:1080
-thread int
thead number (default 6)
-variant string
platform.variant
用例
- 基本
docker-pull nginx
docker-pull mysql/mysql-server:8.0
docker-pull nginx@sha256:d987469c32fecb3f839a4606671eb2bb308039a3a6b2d086341769da3931b9b6
- 代理
docker-pull -proxy http://127.0.0.1:1080 nginx
- 镜像
docker-pull -m docker.chatsbot.org nginx
Docker 容器里运行
- x86
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v ${PWD}:/work lianshufeng/docker-pull -m docker.chatsbot.org nginx
- nas/arm
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v ${PWD}:/work lianshufeng/docker-pull:arm -m docker.chatsbot.org -architecture arm nginx
如果出现网络不稳定或无法拉取镜像的情况,可以使用代理或者镜像服务
- 推荐自建镜像站, 这里放一个共用的,请遵守法律法规
docker-pull -m docker.chatsbot.org nginx