Docker Registry快速搭建私有鏡像倉庫

一.軟件環境

宿主機操作系統:CentOS Linux release 7.5

虛擬機工具:VMware® Workstation 10

應用容器引擎:Docker version 19.03.7

二.任務背景

所謂私有倉庫,也就是在本地(局域網)搭建的一個類似公共倉庫的東西,搭建好之後,我們可以將鏡像提交到私有倉庫中。這樣我們既能使用 Docker 來運行我們的項目鏡像,也避免從公共倉庫中來取來拿所暴露出去的風險;利用Docker Registry快速搭建私有鏡像倉庫

三.操作步驟

倉庫地址:192.168.153.141

#下載registry鏡像

[root@docker docker]# docker pull registry

#創建registry容器並啓動

[root@docker docker]# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 

--restart=always --name registry registry

b697d68647a95e01ee09115c3b9c035a393cac7e51f96e2e58c1896b500e8cfb

[root@docker docker]# docker ps

CONTAINER ID       IMAGE           COMMAND               CREATED                          STATUS         PORTS            NAMES

b697d68647a9       registry        "/entrypoint.sh /etc…"   40 seconds ago      Up 19 seconds   0.0.0.0:5000->5000/tcp   registry

客戶端:192.168.153.142

#測試,查看鏡像倉庫中所有鏡像

[root@redis_master docker]# curl http://192.168.153.141:5000/v2/_catalog

{"repositories":[]}

#私有鏡像倉庫管理

#配置私有倉庫:

# vi /etc/docker/dameon.jsp

{

"registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"],

 "insecure-registries":["192.168.153.141:5000"]

}

~

# systemctl restart docker

#下載鏡像

# docker pull nginx:1.12

#打標籤

# docker tag nginx:1.12 192.168.153.142:5000/centos:7

# docker tag nginx:1.12 192.168.153.141:5000/nginx:1.12

# docker images

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE

192.168.153.141:5000/nginx    1.12       4037a5562b03        22 months ago       108 MB

192.168.153.142:5000/centos   7           4037a5562b03        22 months ago       108 MB

docker.io/nginx               1.12                4037a5562b03        22 months ago       108 MB

#上傳鏡像到倉庫

# docker  push 192.168.153.141:5000/nginx:1.12

The push refers to a repository [192.168.153.141:5000/nginx]

4258832b2570: Pushed 

683a28d1d7fd: Pushed 

d626a8ad97a1: Pushed

1.12: digest: sha256:09e210fe1e7f54647344d278a8d0dee8a4f59f275b72280e8b5a7c18c560057f size: 948

# docker tag nginx:1.12  192.168.153.141:5000/centos:7

#查看倉庫鏡像

[root@redis_master /]# curl http://192.168.153.141:5000/v2/_catalog

{"repositories":["centos","nginx"]}

#列出鏡像標籤

[root@redis_master /]# curl http://192.168.153.141:5000/v2/nginx/tags/list

{"name":"nginx","tags":["1.12"]}

# curl http://192.168.153.141:5000/v2/centos/tags/list

{"name":"centos","tags":["7"]}

#從本地倉庫(192.168.153.141:5000)下載鏡像

#並創建nginx容器

[root@redis_master /]# docker run -itd --name nginx -p 88:80 192.168.153.141:5000/nginx:1.12

0c75bba5a04eb075d432f4409923007a4f8c29b4fb987475d37cae4eeccb303b

#查看正在運行的容器

[root@redis_master /]# docker ps

CONTAINER ID        IMAGE                             COMMAND                  CREATED             STATUS              PORTS                NAMES

0c75bba5a04e        192.168.153.141:5000/nginx:1.12   "nginx -g 'daemon ..."   40 seconds ago      Up 38 seconds       0.0.0.0:88->80/tcp   nginx

本地鏡像查收.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章