您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么搭建docker私有倉庫,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
hub.docker.com上可以保存鏡像,但是網(wǎng)速相對較慢,在內(nèi)部環(huán)境中搭建一個私有的公共倉庫是個更好的方案,今天我們就來實戰(zhàn)搭建私有docker倉庫吧;
環(huán)境規(guī)劃
需要兩臺機(jī)器:docker私服倉庫的server和使用docker的普通機(jī)器,這兩個機(jī)器都是ubuntu16版本的server,ip信息如下:
機(jī)器名 | ip | 功能 |
---|---|---|
docker-registry | 192.168.119.148 | docker私有倉庫服務(wù)器 |
docker-app | 192.168.119.155 | 運(yùn)行docker服務(wù)的普通服務(wù)器 |
準(zhǔn)備機(jī)器
本次實戰(zhàn)中,上述兩臺機(jī)器是vmware上創(chuàng)建的兩個虛擬機(jī),都安裝了docker服務(wù),詳細(xì)的創(chuàng)建和安裝過程,請參照《rancher下的kubernetes之一:構(gòu)建標(biāo)準(zhǔn)化vmware鏡像》,記得在vmware中給兩個鏡像把名字分別改成“docker-registry”和“docker-app”,以免后面搞錯了;
虛擬機(jī)啟動后,請先修改/etc/hostname文件,將兩個機(jī)器的hostname分別修改成“docker-registry”和“docker-app”,然后用reboot命令重啟;
安裝私有倉庫
登錄docker-registry機(jī)器(推薦使用SecureCRT);
執(zhí)行以下命令,會啟動一個registry容器,該容器用于提供私有倉庫的服務(wù):
docker run --name docker-registry -d -p 5000:5000 registry
執(zhí)行docker ps命令看一下容器情況,如下圖:
容器正常啟動,對外提供服務(wù)通過5000端口映射到docker-registry的5000端口;
執(zhí)行命令curl -X GET http://127.0.0.1:5000/v2/_catalog,收到的響應(yīng)如下,是個json對象,其中repositories對應(yīng)的值是空的json數(shù)組,表示目前倉庫里還沒有鏡像:
{"repositories":[]}
OK,私有倉庫已經(jīng)創(chuàng)建和啟動完畢了,接下來試試如何使用吧;
支持http協(xié)議推送
正常情況下,應(yīng)用服務(wù)器推送鏡像到倉庫用的是https,此處我們通過命令行來測試推送用的是普通的http,所以需要修改docker的啟動參數(shù),使之允許以http協(xié)議工作;
執(zhí)行推送鏡像的機(jī)器是docker-app,所以登錄到此機(jī)器(推薦使用SecureCRT);
修改/etc/default/docker文件,加入以下紅框內(nèi)容:
再修改 /lib/systemd/system/docker.service,以下紅框中的內(nèi)容,第一行為新增,第二行為修改:
執(zhí)行以下命令,重新加載配置信息再重啟docker服務(wù):
systemctl daemon-reload;service docker restart
推送鏡像到私有倉庫
接下來我們在docker-app先下載一個鏡像,再將這個鏡像推送到私有倉庫中去;
登錄docker-app機(jī)器(推薦使用SecureCRT);
執(zhí)行命令docker pull tomcat,從hub.docker.com下載最新版本的tomcat鏡像,如下圖:
下載完畢后,執(zhí)行docker images查看鏡像的信息,如下圖:
如上圖紅框所示,這個鏡像的ID是3dcfe809147d,所以我們執(zhí)行以下命令,給這個鏡像添加一個帶有私有倉庫IP的TAG,這樣后面才能成功推送到私有倉庫:
docker tag 3dcfe809147d 192.168.119.148:5000/tomcat
再執(zhí)行docker images查看鏡像的信息,如下圖,出現(xiàn)了一個新的鏡像,REPOSITORY是192.168.119.148:5000/tomcat:
執(zhí)行以下命令進(jìn)行推送:
docker push 192.168.119.148:5000/tomcat
可以看到順利進(jìn)行中,如下圖:
推送成功后,在docker-app和docker-registry上分別執(zhí)行curl -X GET http://192.168.119.148:5000/v2/_catalog,查看私有倉庫的鏡像信息,都能見到如下內(nèi)容:
使用私有倉庫的鏡像
在docker-app機(jī)器上,先執(zhí)行以下命令將本地鏡像刪掉:
docker rmi 192.168.119.148:5000/tomcat tomcat
再執(zhí)行以下命令,用私服上的鏡像來創(chuàng)建一個容器,映射8080端口:
docker run --name tomcat001 -p 8080:8080 -idt 192.168.119.148:5000/tomcat
本地沒有鏡像就去私服下載,如下圖:
docker-app的IP是192.168.119.155,所以在當(dāng)前電腦上打開瀏覽器,輸入:192.168.119.155:8080,可以看到下圖熟悉的tomcat歡迎頁:
以上是“怎么搭建docker私有倉庫”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。