Docker镜像仓库

一. 公有镜像仓库:docker hub

二. 平台镜像仓库

1.docker hub public镜像仓库(不安全)/private镜像仓库(无法团队协作)

Docker镜像仓库_第1张图片

2.aliyun个人镜像库(免费)public(不安全)/private(无法团队协作)/企业镜像库(需付费)

Docker镜像仓库_第2张图片

三. 私有镜像仓库(安全,适合企业内部)

1.下载镜像 Docker Registry

docker pull registry

2.运行私有库Registry,相当于本地有个私有Docker hub

docker run -d -p 5000:5000 -v /wuqirui/myregistry/:/var/lib/registry --privileged=true registry

默认情况下,仓库被创建在容器的/var/lib/registry目录下,通过容器卷映射创建在宿主机/wuqirui/myregistry目录下。

--privileged=true 设置目录挂载权限

3.curl验证私服库上有什么镜像

查看5000端口使用情况:netstat -anp |grep 5000

开通端口5000:firewall-cmd --zone=public --add-port=5000/tcp --permanent

重启防火墙:firewall-cmd --reload

验证私服库有什么镜像:curl -XGET http://192.168.32.130:5000/v2/_catalog  //ip是宿主机ip

{"repositories":[ ]}

4.案例演示创建一个新镜像,ubuntu安装ifconfig命令

进入容器执行命令:

apt-get update

apt-get install net-tools

 退出容器执行命令:

docker commit -m="ifconfig cmd add" -a="wuqirui" containerID ImageName:Tag

5.将新镜像修改为符合私服规范的ImageName:Tag

docker tag myubuntu:1.2 192.168.32.130:5000/myubuntu:1.2

6.修改配置文件使之支持http(docker默认不支持http)

vim /ect/docker/daemon.json

{
  "registry-mirrors": ["https://yd08mmsw.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.32.130:5000"]
}

重启docker: systemctl restart docker

7.push推送到私服库

docker push 192.168.32.130:5000/myubuntu:1.0

8.再次curl验证私服库上有什么镜像

[root@centos7host1 ~]# curl -XGET http://192.168.32.130:5000/v2/_catalog
{"repositories":["myubuntu"]}

9.获取私服库的myubuntu镜像

docker pull 192.168.32.130:5000/myubuntu:1.0

你可能感兴趣的:(docker,容器,运维)