安装Registry镜像管理仓库和安装GitLab和Nexus类似
1.按照以下的路径创建相应的文件夹
/usr/local/docker/registry
2.在registry文件夹下面创建docker-compose.yml配置文件,在配置文件中添加以下的配置
version: '3.1'
services:
registry:
image: registry
restart: always
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry/data:/var/lib/registry
3.用docker-compose up启动容器,在浏览器的地址栏输入以下的地址如果看到返回了一个空的json数据那么就安装成功
http://你的ip:5000/v2/
4.要实现一次构建到处运行还需要进行以下操作,找到该目录下的daemon.json文件添加以下的配置(这里的ip是根据你自己的服务器ip自行修改)特别注意的是下面配置的这个ip是仓库Registry的ip
"insecure-registries": [
"192.168.206.131:5000"
]
5.按照以下的命令进行重启
systemctl restart docker
6.使用docker info 检查看是否包含192.168.206.131:5000这个配置,如果有就表示配置成功
7.现在可以尝试者从官方网站上面拉去一个镜像进行测试,这里就以tomcat为例子
docker pull tomcat
8.拉取完镜像后在将这个镜像标记为自己的镜像然后推送到Registry镜像仓库中去,例如以下就是将本地tomcat标记为名为tomcat IP为 192.168.206.130 端口号为:5000的镜像取名为tomcat(/后面表示的是名字)然后就可以通过docker images 来查看该镜像,还可以在tomcat后面加上类似于:8.5.32的方式来指定版本号
docker tag tomcat 192.168.206.130:5000/tomcat
注意:这个ip是仓库的ip
9.之后在将该镜像用以下的命令推送到Registry私服上面。这里的意思就是将包括ip和端口和镜像命令的镜像推送到镜像上面
docker push 192.168.206.130:5000/tomcat
10.上传后可以通多以下方式来访问看是否真的上传成功,能看到不是一个空的json就表示上传成功(这里的ip是Registry的ip,可以根据自己的ip进行相应的修改)
http://192.168.206.130:5000/v2/_catalog
11.可以根据以下的方式进行访问进行指定镜像的的查看,如果是其他的镜像直接将tomcat换成其他的就可以
http://192.168.206.130:5000/v2/tomcat/tags/list
12.如果需要维护界面可以在以下Registry的docker-compose.yml配置文件中换成以下的配置
version: '3.1'
services:
registry:
image: registry
restart: always
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry/data:/var/lib/registry
frontend:
image: konradkleine/docker-registry-frontend:v2
ports:
- 8080:80
volumes:
- ./certs/frontend.crt:/etc/apache2/server.crt:ro
- ./certs/frontend.key:/etc/apache2/server.key:ro
environment:
- ENV_DOCKER_REGISTRY_HOST=192.168.206.130
- ENV_DOCKER_REGISTRY_PORT=5000
13.在通过仓库ip用以下方式就可以访问了
http://192.168.206.130:8080/home
注意:以上的ip是Registry的ip所以可以根据自己的IP进行相关的修改