目录
前言
在docker-ce的安装中,介绍了Docker内部的三大核心概念,有疑问的小伙伴可以看一下我的Docker的安装篇文章,今天要说的是三大核心概念之一的,也是我认为比较重要的Docker私有仓库的搭建。废话不多说了,就步入正题吧!!
一、准备条件
两台虚拟机并且Docker-ce需要安装完成,如果不知道这么安装的就请看我的Docker安装篇
二、主机一,二 路由转发
vim /etc/sysctl.conf
sysctl -p
三、主机一:下载私有仓库镜像,并且搭建私有仓库
[root@docker ~]# docker pull registry:2 下载私有仓库镜像
[root@docker ~]# docker images 查看下载的镜像
[root@docker ~]# mkdir -p /opt/data/registry/ 创建目录作为私有仓库
[root@docker ~]# docker run -itd -p 5000:5000 --restart always -v /opt/data/registry/:/var/lib/registry --name registry registry:2 端口映射
-p 容器内用什么端口 5000本地端口
restart always 容器遇到错误是自动重启
never 不重启 failure 只有报错才重启
-v 容器目录和物理机的目录相通,目录映射 /opt/data/registry 和容器内 /var/lib/registry (内存放的镜像)是一样的
[root@docker ~]# curl 192.168.6.100:5000/v2/_catalog 检测容器内的镜像
注:现在为空
四、主机一,二修改docker的配置文件
vim /usr/lib/systemd/system/docker.service 修改配置文件(不安全的镜像私有仓库)
重启服务
systemctl daemon-reload
systemctl restart docker
五、测试在主机一中下载镜像,并上传,然后在主机二中验证
下载镜像:
[root@docker ~]# docker pull nginx
[root@docker ~]# docker pull centos:7
查看镜像
[root@docker ~]# docker images
私有仓库必须打标签(将该镜像标志为要推送到私有仓库)——名字必须是:私有仓库地址 / 名字
[root@docker ~]# docker tag nginx:latest 192.168.6.100:5000/nginx-ftt
[root@docker ~]# docker tag centos:7 192.168.6.100:5000/centos-ftt
上传镜像
[root@docker ~]# docker push 192.168.6.100:5000/nginx-ftt
[root@docker ~]# docker push 192.168.6.100:5000/centos-ftt
在主机二中验证,并且下载
[root@docker1 ~]# curl 192.168.6.100:5000/v2/_catalog
[root@docker1 ~]# docker pull 192.168.6.100:5000/centos-ftt
[root@docker1 ~]# docker pull 192.168.6.100:5000/nginx-ftt
[root@docker1 ~]# docker images