Hello Docker(五)——Docker Registry

Hello Docker(五)——Docker Registry

一、私有Registry部署

1、Registry简介

Registry用于保存docker镜像,包括镜像的层次结构和元数据。用户可以使用官方的Docker Hub,也可以自建私有Registry。

2、私有Registry部署

Registry镜像下载:
docker pull registry
Registry容器运行:
docker run -d -p 5000:5000 --restart always --name registry registry
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,将主机的/opt/registry目录挂载到/var/lib/registry目录,即可实现将镜像保存到主机的/opt/registry目录。

3、Registry查看

Registry容器启动后,使用浏览器访问http://ip_add:5000/v2/。

4、Docker配置

客户端Docker配置文件/etc/docker/daemon.json需要增加Registry服务地址:

{
    "registry-mirrors":
    ["https://pee6w651.mirror.aliyuncs.com", "https://docker.mirrors.ustc.edu.cn"],
    "insecure-registries":
    ["192.168.0.104:5000"]
}

"registry-mirrors": ["https://pee6w651.mirror.aliyuncs.com"] 是阿里云代理的Registry Hub仓库的地址,可以加快国内访问Registry Hub仓库的速度。
重启Docker:
systemctl restart docker 

5、tag Docker镜像

将当前镜像命名为符合仓库要求registry_url:port/ImageName:tag的格式,如果不指定tag版本,则默认为latest。
docker tag docker.io/wurstmeister/kafka 192.168.0.104:5000/kafka:1.0

6、push Docker镜像至私有Registry

docker push 192.168.0.104:5000/kafka:1.0
push成功后,可以查看本地/opt/registry目录下是否已经有刚推送的Docker镜像,也可以在浏览器中输入http://ip_add:5000/v2/_catalog查看当前私有Registry的Docker镜像。

7、私有Registry删除

docker container stop registry
停止私有registry
docker container rm -v registry
删除registry数据

二、Docker镜像制作

1、Docker镜像制作

使用docker build通过Dockerfile创建镜像

2、Docker容器

docker commit -a "scorpio.com" -m "my apache" a404c6c174a2 mymysql:v1
将容器a404c6c174a2保存为新的镜像,并添加提交人信息和说明信息。

3、tag镜像

docker tag docker.io/wurstmeister/kafka 192.168.0.104:5000/kafka:1.0

三、Docker镜像操作

1、Docker镜像下载

docker pull 192.168.0.104:5000/kafka:1.0

2、Docker镜像上传

docker push 192.168.0.104:5000/kafka:1.0

猜你喜欢

转载自blog.51cto.com/9291927/2542259