0
点赞
收藏
分享

微信扫一扫

Docker系列---【搭建docker私有仓库】

前提:会使用Dockerfile构建镜像​

1.拉取私服镜像

docker pull registry

2.启动docker私服

docker run -di --name=registry ‐p 5000:5000 registry

3.打开浏览器 输入地址"http://192.168.26.130:5000/v2/_catalog"看到 {"repositories":[]} 表示私有仓库搭建成功,并且内容为空。

4.修改daemon.json,此步用于让 docker信任私有仓库地址

vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
"insecure-registries": ["192.168.26.130:5000"]
}

5.重启docker服务

systemctl restart docker

6.重启registry

docker start registry

7.镜像上传至私有仓库

#标记此镜像jdk1.8_hjw为私有仓库的镜像,这个镜像和jdk1.8的镜像镜像id是一样的
docker tag jdk1.8_hjw 192.168.26.130:5000/jdk1.8

#上传标记的镜像
docker push 192.168.184.141:5000/jdk1.8

8.这时候访问"http://192.168.26.130:5000/v2/_catalog",就可以看到上传的镜像。

Docker系列---【搭建docker私有仓库】_centos

 9.从私有仓库下载镜像,此时在另一台装有docker的服务器上,重复4,5步骤,然后下载镜像

docker pull 192.168.26.130:5000/jdk1.8

 

 扩展:

第一台配置

[root@docker ~]# docker pull registry 
#下载registry镜像
[root@docker ~]# docker run -tid --name registry --restart=always -p 5000:5000 - v /data/registry:/var/lib/registry registry
#运行该镜像,各个选项含义如下:
# -tid:以后台持久运行,并分配一个可交互的为终端
# --name registry :给容器定义一个名字
# --restart=always:该容器可以随着docker服务的启动而启动
# -p:将容器的端口映射到宿主机,冒号前面是宿主机的端口,冒号后面是容器的端口,registry的默认端 口是5000
# -v:将宿主机的目录挂载到容器中,冒号前面是宿主机的目录,冒号后面是容器中的目录
[root@docker ~]# docker images
#查看当前的镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 0f3e07c0138f 2 weeks ago 220MB
registry latest f32a97de94e1 7 months ago 25.8MB
[root@docker ~]# docker tag centos:latest 192.168.20.7:5000/centos:latest
#更改镜像名称,以便符合私有仓库名称规范
#注:私有仓库镜像的命名规则:192.168.20.7:5000/XXX(宿主机的IP:5000端口/镜像名称)
[root@docker ~]# vim /usr/lib/systemd/system/docker.service
#更改docker的配置文 件,以便指定私有仓库 ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20.7:5000
#定位到上面那行,在后面添加“--insecure-registry”并指定私有仓库的IP及端口,然后保存退出即可
[root@docker ~]# systemctl daemon-reload
#重载配置文件
[root@docker ~]# systemctl restart docker
#重启docker服务
[root@docker ~]# docker push 192.168.20.7:5000/centos:latest
#上传镜像至私有仓 库
[root@docker ~]# curl 192.168.20.7:5000/v2/_catalog
#查看私有仓库中的镜像
{"repositories":["centos"]}
[root@docker ~]# curl 192.168.20.7:5000/v2/centos/tags/list
#查看镜像的详细信息
{"name":"centos","tags":["latest"]}

第二台配置

[root@docker02 ~]# vim /usr/lib/systemd/system/docker.service 
#编辑主配置文件 ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20.7:5000
#定位到上面那行,添加“--insecure-registry”指定私有仓库的IP及参数 #添加完成后,保存退出即可
[root@docker02 ~]# systemctl daemon-reload
#重载配置文件
[root@docker02 ~]# systemctl restart docker
#重启docker服务
[root@docker02 ~]# docker pull 192.168.20.7:5000/centos:latest
#下载私有仓库的中的镜像
[root@docker02 ~]# docker images
#确认下载的镜像

 

 

举报

相关推荐

0 条评论