搭建本地鏡像倉庫-registry-centos7.3-docker

master:192.168.1.110

node:192.168.1.111

docker(鏡像倉庫):192.168.1.119

#本機的所有虛擬機都和本機網絡互通,虛擬機都可以上網

 

1、修改/etc/hosts(docker本地鏡像倉庫操作)

192.168.1.119    docker

 

設置網易雲鏡像倉庫爲本地下載的倉庫,並且設置本機爲鏡像上傳的倉庫

cat > /etc/docker/daemon.json << EOF

{"registry-mirrors": ["http://hub-mirror.c.163.com"],"insecure-registries": [ "192.168.1.119:5000","docker:5000"]}

EOF
systemctl daemon-reload

systemctl restart docker

 

3、下載registry倉庫管理服務(鏈接:https://pan.baidu.com/s/1JI4Bb9sFHyEd6izaXc47OQ 提取碼:rf5s)下載的tar包需要進行導入“docker load < registry.tar”,或者在線下載網易雲的鏡像

docker pull registry

 

如果出現下方報錯信息

Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on [::1]:53: read udp [::1]:34106->[::1]:53: read: connection refused

那是因爲,虛擬機沒有通過dns獲取到網易雲的地址

處理方法

 

4、處理方法

修改/etc/sysconfig/network-scripts/ifcfg-ens33,添加下方的dns。

DNS1=114.114.114.114
systemctl daemon-reload

systemctl restart network

 

5、創建registry容器

#創建容器鏡像存放路徑掛載到外面的路徑

mkdir -p /data/registry

docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

#詳情

-itd:在容器中打開一個僞終端進行交互操作,並在後臺運行;

-v:把宿主機的/data/registry目錄綁定 到 容器/var/lib/registry目錄(這個目錄是registry容器中存放鏡像文件的目錄),來實現數據的持久化;

-p:映射端口;訪問宿主機的5000端口就訪問到registry容器的服務了;

--restart=always:這是重啓的策略,假如這個容器異常退出會自動重啓容器;

--name registry:創建容器命名爲registry,你可以隨便命名;

registry:latest:這個是剛纔pull下來的鏡像;

 

6、測試registry服務情況

curl http://127.0.0.1:5000/v2/_catalog

 

{"repositories":[]} #沒有任何鏡像

 

#查看鏡像的版本

curl http://127.0.0.1:5000/v2/nginx/tags/list

curl http://docker:5000/v2/nginx/tags/list

{"name":"nginx","tags":["latest","v1"]}

----------------------------------------------------------------------------------------------------------------------------------------------------

curl http://k8s-docker:5000/v2/mysql/tags/list

 

{"name":"mysql","tags":["latest"]}

 

#下載測試鏡像nginx,以網易云爲鏡像倉庫進行下載

docker pull nginx

 

7、給鏡像打標籤

docker tag nginx docker:5000/nginx:v1.0.0

 

8、上傳鏡像到本地倉庫

docker push docker:5000/nginx:v1.0.0

 

9、登錄node服務器(測試私人倉庫服務器)

cat > /etc/docker/daemon.json << EOF

{"insecure-registries": [ "192.168.1.119:5000","docker:5000"]}

EOF
systemctl daemon-reload

systemctl restart network

 

10、下載私人倉庫中的nginx鏡像(node節點操作)

docker pull docker:5000/nginx:v1.0.0

 

11、查看下載本地鏡像

docker images|grep nginx

 

發佈了17 篇原創文章 · 獲贊 3 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章