一、配置docker的国内加速器
docker
docker版本为1.13.1须要配置一下daemon.jsonjson
配置阿里云的docker加速器:ubuntu
wangpeng@ubuntu:~$ sudo vim /etc/docker/daemon.json { "registry-mirrors": [ "https://kv3qfp85.mirror.aliyuncs.com" ] }
二、拉取registry仓库docker镜像vim
wangpeng@ubuntu:~$ sudo docker pull registry
三、建立registry docker进程
bash
wangpeng@ubuntu:~$ sudo docker run -d --name registry --restart=always -v /myregistry:/var/lib/registry registry wangpeng@ubuntu:~$ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d8f77abe36a7 registry "/entrypoint.sh /e..." 2 hours ago Up 2 hours 0.0.0.0:5000->5000/tcp registry
四、测试上传一个镜像
curl
下载一个测试镜像tcp
wangpeng@ubuntu:~$ sudo docker pull busybox
将busybox镜像重命名为本地镜像格式与本地registry相匹配。
ide
镜像名称由registry和tag两部分组成,registry完整格式:[registry_ip]:[registry:port]/[user]/[image_name:version]测试
wangpeng@ubuntu:~$ sudo docker tag busybox 192.168.56.101:5000/wangpeng/test:v1.0
五、使用docker push命令上传镜像
阿里云
wangpeng@ubuntu:~$ sudo docker push 192.168.56.101:5000/wangpeng/test:v1.0
查看镜像
wangpeng@ubuntu:~$ curl http://192.168.56.101:5000/v2/_catalog {"repositories":["wangpeng/my-image","wangpeng/test"]}
在此须要配置daemon.json的insecure-registries,为了解决https的报错,由于docker默认使用https协议,可是本地如今只支持http协议
不配置daemon.json的话会出现一下错误:
Get https://192.168.56.101:5000/v1/_ping: http: server gave HTTP response to HTTPS clie
配置以下:
wangpeng@ubuntu:~$ sudo vim /etc/docker/daemon.json { "registry-mirrors": [ "https://kv3qfp85.mirror.aliyuncs.com" ], "insecure-registries": [ "192.168.56.101:5000" ] }
重启docker进程
wangpeng@ubuntu:~$ sudo systemctl restart docker
上传报错的问题就此解决
六、下载镜像测试一下
wangpeng@ubuntu:~$ sudo docker pull 192.168.56.101:5000/wangpeng/test:v1.0 v1.0: Pulling from wangpeng/test Digest: sha256:73a74253ed45caebc619d95b1d84e4d67a64e5b6d81e31ac7c496b9c11128d74 Status: Image is up to date for 192.168.56.101:5000/wangpeng/test:v1.0