今天介绍要如何的建立一个 Private(私有) 的 Docker Registry
今天要实作的部份如下:
1. 建立 Docker Registry Server
2. 把第5天做好的 Docker Image Push 到上个步骤架设好的 Docker Registry Server
3. 找另外一台电脑把 Docker Image Pull下来测试
一. 建立 Docker Registry Server
*直接透过启动 Docker container 的方式,就可以把 Docker Registry Server 建立起来,指令如下:
参数说明如下:
-d:执行的 docker container 是 run 在背景的状态,所以需要使用 docker logs 的指令才可以看到 log 状态
-p:主机的 5000 port mapping 到 container 的 5000 port
-v:因为push 到docker registry 的资料是放在container 里面的,如果把docker container 删除掉docker registry 的Image 资料就会不见,因此需要使用–v 参数将主机的档案路径mapping 到container 里面的档案路径,这样docker container 被删除docker registry 的Image 资料还会存在
--name:设定 docker container 的名称
执行成功之后画面如下:
二. 把第5天做好的 Docker Image Push 到上个步骤架设好的 Docker Registry Server
跟使用 docker hub 一样要把 Docker Image Push 到 Docker需要先使用 docker tag 的指令如下:
因为这里是 Demo 所以直接使用 IP 位址指定 Docker Reigstry 的位址,在实务上这是 Hard Code的做法,所以较好做法应该是使用指定 Host Name的方式。
把 Docker Image Push 到 Docker Registry Server 上,指令如下:
画面如下:
没有成功的把 Docker Image Push 到 Docker Registry 上
在上个步骤把 Docker Image Push 到 Docker Registry 收到错误讯息主要是因为安全性上的问题,需要修改 client 的 Docker 设定,如下
(1) vi /etc/docker/daemon.json
daemon.json 的档案内容如下
(2) 重新启动 Docker 的 service 指令如下
4. 重新 push docker image,指令如下
可以看到画面如下
以上就成功的把 Docker Image Push 到了 Docker Hub 上了
三. 再另外找一台电脑把 Docker Image Pull下来测试
需要修改 docker 的设定,如下
daemon.json 的档案内容如下
重新启动 Docker 的 service 指令如下
Pull docker image 指令如下
执行成功之后画面如下
閱讀更多 Java高級開發工程師 的文章