微服务的镜像会上传到Docker仓库保存,常用的公网Docker仓库有阿里云,网易云等,在企业局域网也可以搭建
自己的Docker私有仓库,本教程使用Docker提供的私有仓库 registry。
进入Docker私有仓库所在服务器执行:
1、安装Docker
2、创建私有仓库容器
docker run --name docker-registry -d -p 5000:5000 registry
执行结果如下:
[root@heartstar test]# docker run --name docker-registry -d -p 5000:5000 registry
Unable to find image 'registry:latest' locally
latest: Pulling from library/registry
31e352740f53: Pull complete
7f9bcf943fa5: Pull complete
3c98a1678a82: Pull complete
51f7a5bb21d4: Pull complete
3f044f23c427: Pull complete
Digest: sha256:9977826e0d1d0eccc7af97017ae41f2dbe13f2c61e4c886ec28f0fdd8c4078aa
Status: Downloaded newer image for registry:latest
373a38c57db66912c462b332a65195f40454a11cbad3780901db187ca2d51917
上边显示 registry镜像已经创建,并且docker-registry容器已经启动成功。
访问:http://192.168.199.215:5000/v2/_catalog
响应结果如下
{"repositories":[]}
上边的响应结果说明在docker私有仓库中还没有镜像。
默认docker-registry只允许https提交镜像,如下配置使docker-registry支持http
在/etc/docker下,创建daemon.json文件,写入:
{ "insecure-registries":[192.168.199.215:5000"]}
重启docker:
systemctl restart docker.service
如果重启报错
将daemon.json改为daemon.conf
mv daemon.json daemon.conf
启动docker-registry
docker start docker‐registry