文章目錄
- 前言
- 1. 部署Docker Registry
- 2. 本地測試推送鏡像
- 3. Linux 安裝cpolar
- 4. 配置Docker Registry公網訪問地址
- 5. 公網遠程推送Docker Registry
- 6. 固定Docker Registry公網地址
前言
本文主要介紹如何部署Docker Registry 本地鏡像倉庫,簡單幾步結合cpolar內網穿透工具實現遠程pull or push (拉取和推送)鏡像,不受本地局域網限制!
1. 部署Docker Registry
使用官網安裝方式,docker命令一鍵啟動,該命令啟動一個registry的容器,版本是2,掛載宿主機端口是5000端口,掛載后,5000端口就是我們連接鏡像倉庫的本地端口
docker run -d -p 5000:5000 --name registry registry:2
執行后,輸入docker ps ,我們可以看到運行的容器
2. 本地測試推送鏡像
Docker Registry 運行正常后,本地測試推送一個鏡像到Registry里面,這邊測試把本地mysql鏡像推送:
給鏡像加上標簽
docker image tag mysql localhost:5000/myfirstimage
推送
docker push localhost:5000/myfirstimage
可以看到推送成功,本地推送鏡像到Docker Registry表示成功,下面安裝cpolar 內網穿透工具,實現遠程推送
3. Linux 安裝cpolar
上面我們安裝成功了Docker Registry本地鏡像庫,下面我們在Linux安裝cpolar內網穿透工具,通過cpolar 轉發本地端口映射的http公網地址,我們可以很容易實現遠程連接,而無需自己注冊域名購買云服務器.下面是安裝cpolar步驟
cpolar官網地址: https://www.cpolar.com
- 使用一鍵腳本安裝命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系統添加服務
sudo systemctl enable cpolar
- 啟動cpolar服務
sudo systemctl start cpolar
cpolar安裝成功后,在外部瀏覽器上訪問Linux 的9200端口即:【http://局域網ip:9200】,使用cpolar賬號登錄,登錄后即可看到cpolar web 配置界面,結下來在web 管理界面配置即可
4. 配置Docker Registry公網訪問地址
點擊左側儀表盤的隧道管理——創建隧道,創建一個Docker Registry的http cpolar 公網地址隧道!
- 隧道名稱:可自定義命名,注意不要與已有的隧道名稱重復
- 協議:選擇http
- 本地地址:5000
- 域名類型:免費選擇隨機域名
- 地區:選擇China vip
點擊創建
隧道創建成功后,點擊左側的狀態——在線隧道列表,查看所生成的公網訪問地址,有兩種訪問方式,一種是http 和https
5. 公網遠程推送Docker Registry
Docker Registry需要使用https進行推送,cpolar域名中默認支持https方式訪問,所以更加方便,也無需我們設置其他.
首先標記鏡像,然后推送,注意,https://
協議名稱不需要輸入,可以看到,推送成功了,這樣一個公網地址遠程連接就設置好了!
同樣拉取也是可以的
6. 固定Docker Registry公網地址
由于以上使用cpolar所創建的隧道使用的是隨機公網地址,24小時內會隨機變化,不利于長期遠程訪問。因此我們可以為其配置二級子域名,該地址為固定地址,不會隨機變化【ps:cpolar.cn已備案】
注意需要將cpolar套餐升級至基礎套餐或以上,且每個套餐對應的帶寬不一樣。【cpolar.cn已備案】
登錄cpolar官網,點擊左側的預留,選擇保留二級子域名,設置一個二級子域名名稱,點擊保留,保留成功后復制保留的二級子域名名稱
保留成功后復制保留成功的二級子域名的名稱
返回登錄cpolar web UI管理界面,點擊左側儀表盤的隧道管理——隧道列表,找到所要配置的隧道,點擊右側的編輯
修改隧道信息,將保留成功的二級子域名配置到隧道中
- 域名類型:選擇二級子域名
- Sub Domain:填寫保留成功的二級子域名
點擊更新
(注意,點擊一次更新即可,不需要重復提交)
更新完成后,打開在線隧道列表,此時可以看到公網地址已經發生變化,地址名稱也變成了固定不變的二級子域名名稱的域名
再次測試使用固定地址進行遠程,可以看到成功了,這樣一個固定且永久不變的公網地址就設置好了