通過前面的學習,我們已經知道,怎麼將本地自己製作的鏡像發佈到阿裡雲遠程鏡像倉庫中去。但是在實際工作開發中,一般,我們都是將公司的鏡像發佈到公司自己搭建的私服鏡像倉庫中,那麼一個私服的鏡像倉庫怎麼搭建?怎麼將自己的鏡像推送到私服倉庫中呢?怎麼驗證是否成功呢?本文咱們就一起來學學怎麼將鏡像推送到私服鏡像 ...
通過前面的學習,我們已經知道,怎麼將本地自己製作的鏡像發佈到阿裡雲遠程鏡像倉庫中去。但是在實際工作開發中,一般,我們都是將公司的鏡像發佈到公司自己搭建的私服鏡像倉庫中,那麼一個私服的鏡像倉庫怎麼搭建?怎麼將自己的鏡像推送到私服倉庫中呢?怎麼驗證是否成功呢?本文咱們就一起來學學怎麼將鏡像推送到私服鏡像中。
大家好,我是凱哥Java(kaigejava),樂於分享,每日更新技術文章,歡迎大家關註“凱哥Java”,及時瞭解更多。讓我們一起學Java。
文末送上本系列教程其他文章直通車,歡迎大家系統地去學習
本文目錄:
1:下載鏡像 DockerRegistry
2:運行私有庫Registry,相當於本地有個私有的Docker hub
3:案例演示創建一個新鏡像,ubuntu安裝ifconfig命令
安裝ifconfig
查看現有鏡像:
4:curl驗證私服庫上有什麼鏡像
5:將新鏡像修改符合私服規範的tag
6:修改配置文件使之支持http
7:push推送到私服
8:curl驗證私服上有什麼鏡像第二次查看
9:pull到本地並運行
從私服拉取命令:
重新查看本地鏡像:
docker私有鏡像倉庫:Docker Registry是官方提供的工具,可以用於構建私有鏡像倉庫
本地搭建私有倉庫步驟
1:下載鏡像 DockerRegistry
命令:
docker pull registry
2:運行私有庫Registry,相當於本地有個私有的Docker hub
命令:
docker run -d -p 埠:埠 -v 容器地址:映射地址 --privileged-true registry
預設情況,倉庫被創建在容器的/var/lib/registry目錄下,建議自行用容器捲映射,方便宿主機兩條
實例:
docker run -d -p 5000:5000 -v /n/myregistry/:/tmp/registry --privileged=true registry
查看docker正在運行的容器:
3:案例演示創建一個新鏡像,ubuntu安裝ifconfig命令
安裝ifconfig
在容器中執行下麵兩個命令:
apt-get update
apt-get install net-tools
使用commit命令製作一個帶有ifconfig的ubuntu.
註意,docker commit命令是在宿主機上執行的
套用公式:
docker commit -m"add ifconfig" -a"凱哥Java" 0930939e6f99 kagejava/ifconfigubuntu:1.0.1
查看現有鏡像:
4:curl驗證私服庫上有什麼鏡像
命令:
curl -XGET http://192.168.50.128:5000/v2/_catalog
說明:192.xxx是虛擬機的地址
可以看到私服上面是空的。
5:將新鏡像修改符合私服規範的tag
命令公式
docker tag 鏡像:Tag HOST:Port、Repository:Tag
註意:自己host主機ip地址。也就是虛擬機的ip地址
使用命令將:kaigejava/ifconfigubuntu:1.0.1 這個鏡像修改為:192.168.50.128:5000/kagejavaifconfig:1.0.1
docker tag kagejava/ifconfigubuntu:1.0.1 192.168.50.128:5000/kaigejavaifconfig:1.0.1
說明:192.168..50.128是虛擬機主機的ip.
命令執行完成之後,查看當前imags.如下圖:
6:修改配置文件使之支持http
在docker的json文件中添加
"insecure-registries":["192.168.50.128:5000"]
註意修改ip及添加逗號
重啟docker命令:
systemctl restart docker
重啟docker後,重啟私服
docker run -d -p 5000:5000 -v /n/myregistry/:/tmp/registry --privileged=true registry
7:push推送到私服
命令公式:
docker push ip:斷開/鏡像信息:版本
當出現以下說明已經push成功:
8:curl驗證私服上有什麼鏡像第二次查看
命令:
curl -XGET http://192.168.50.128:5000/v2/_catalog
可以看到,我們已經將新的鏡像上傳到私服上了。
9:pull到本地並運行
從私服拉取命令:
docker pull ip:埠/鏡像名:版本號
重新查看本地鏡像:
直通車,本系列教程已發佈文章,快速到達,《Docker學習系列》教程已經發佈的內容如下:
【圖文教程】Windows11下安裝Docker Desktop
【填坑】在windows系統下安裝Docker Desktop後遷移鏡像位置
【Docker學習系列】Docker學習1-docker安裝
【Docker學習系列】Docker學習2-docker設置鏡像加速器
【Docker學習系列】Docker學習3-docker的run命令幹了什麼?docker為什麼比虛擬機快?
【Docker學習系列】Docker學習2-常用命令之啟動命令和鏡像命令
【Docker學習系列】Docker學習系列3:常用命令之容器命令
【Docker學習系列】Docker學習4-常用命令之重要的容器命令
【Docker教程系列】Docker學習5-Docker鏡像理解
【Docker教程系列】Docker學習6-Docker鏡像commit操作案例
【Docker學習教程系列】7-如何將本地的Docker鏡像發佈到阿裡雲
大家好,我是凱哥Java(kaigejava),樂於分享,每日更新技術文章,歡迎大家關註“凱哥Java”,及時瞭解更多。讓我們一起學Java
本文來自博客園,作者:kaizi1992,轉載請註明原文鏈接:https://www.cnblogs.com/kaigejava/p/16970889.html