主要包含两部分,docker私有仓库的安装配置,以及通过镜像仓库上传下载镜像。
一,docker私有仓库的安装
1.安装registry仓库镜像
docker pull registry
2.运行仓库,指定5000端口
docker run -d --name registry -p 5000:5000 registry:latest docker ps
3.修改配置,打开删除镜像功能(默认不能删除)
进入到容器内部
docker exec -it eae7ea600336 sh
打开delete功能,加上delete以及enabled这两行
/etc/docker/registry # vi /etc/docker/registry/config.yml
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
delete: #加这一行
enabled: true #加这一行
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3
4.在需要通过此仓库上传或者下载仓库的docker服务器上,添加如下配置(避免ssl错误)
[root@jenkins01 ~]# more /etc/docker/daemon.json
{
"insecure-registries" : [ "192.168.1.145:5000" ]
}
如果配置文件不为空,曾利用逗号隔行添加。
[root@dockerserver01 ~]# more /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"],
"insecure-registries": ["192.168.1.145:5000"]
}
5.重启docker服务
systemctl restart docker
6.验证
在浏览器中输入网址: http://私有仓库服务器ip:5000/v2/_catalog
或者用linux命令 curl http://127.0.0.1:5000/v2/_catalog
有反馈说明安装成功。
二,上传拉取镜像
1. 上传镜像
1)必须先将客户端的镜像打tag标签。
格式:docker tag your-image-name:tagname your-server-ip:5000/your-image-name:tagname 例 :docker tag tomcat:v1 192.168.1.145:5000/tomcat:V1.1
打完标签后,docker images可以看到新打标签的镜像
2)上传镜像
格式:docker push your-registry-server-ip:5000/your-image-name:tagname 例 :docker push 192.168.1.145:5000/tomcat:V1.1
3)查看仓库里的镜像(不含版本号)
curl -XGET http://192.168.1.145:5000/v2/_catalog
4)查看仓库里镜像的版本号
格式:curl -XGET http://<仓库ip地址>:<仓库端口>/v2/<镜像名称>/tags/list 例 curl -XGET http://192.168.1.145:5000/v2/tomcat/tags/list
2.拉取镜像
docker pull 192.168.1.145:5000/cuanon-tomcat:V1.1
3.删除容器
进入仓库的容器 find / -name "*要删除镜像名称*" rm -rf 镜像目录 registry garbage-collect /etc/docker/registry/config.yml



