Docker搭建自己的本地鏡像倉庫的步驟
一、環(huán)境以及準(zhǔn)備工作
- 1.ubuntu14.04
- 2.docker環(huán)境
二、搭建過程
1.更換鏡像源(因為默認(rèn)的太慢了,國內(nèi)的更快)
sudo vim /etc/default/docker 輸入以下參數(shù): DOCKER_OPTS="--registry-mirror=http://hub-mirror.c.163.com" //網(wǎng)易的,也可以使用daoClouds的
如果是剛安裝的ubuntu環(huán)境的話,執(zhí)行以下命令(當(dāng)然也能用vi,或者直接寫入)
sudo apt-get update //更新apt-get源,防止下載出錯 sudo apt-get install vim -y //下載vim
2.啟動docker并拉取registry鏡像源
sudo service docker start //啟動docker sudo docker pull registry //下載registry鏡像
3.下載好后查看是否下載成功
sudo docker images
4.下載后以后啟動該容器,可以將容器內(nèi)的數(shù)據(jù)映射掛載在自己指定的目錄上,這里以/opt/data/registry為宿主機(jī)存儲的目錄
mkdir -p /opt/data/registry //創(chuàng)建目錄 sudo docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry //啟動容器 -d : 讓容器可以后臺運(yùn)行 -p :指定映射端口(前者是宿主機(jī)的端口號,后者是容器的端口號) -v :數(shù)據(jù)掛載(前者是宿主機(jī)的目錄,后者是容器的目錄) --name : 為運(yùn)行的容器命名
然后查看是否成功啟動該容器
sudo docker ps
5.查看宿主機(jī)的ip地址
ifconfig
6.更改docker的配置文件,添加自己的私庫地址,docker啟動時會加載/etc/init/docker.conf,看完該配置文件,發(fā)現(xiàn)其會加載/etc/default/docker文件,因此只需要將私庫地址寫入/etc/default/docker中即可
sudo vim /etc/default/docker 在DOCKER_OPTS更改成如下: DOCKER_OPTS="--registry-mirror=http://hub-mirror.c.163.com --insecure-registry 192.168.147.129:5000" **5000端口一定得加,宿主機(jī)默認(rèn)是訪問80端口,不想加的話可以在啟動容器的時候以宿主機(jī)的80端口 映射容器的5000端口
修改以后重啟容器并開啟registry服務(wù)
sudo service docker restart //重啟容器 sudo docker start private_registry //重啟registry服務(wù)
以上五個步驟就搭建好了一個私庫了.
三、測試
1.拉取一個鏡像并打tag(以busybox為例,因為busybox比較?。?/p>
sudo docker pull busybox:latest //拉取鏡像 sudo docker tag busybox:latest 192.168.147.129:5000/busybox
2.提交tag鏡像到自己的本地鏡像倉庫
sudo docker push 192.168.147.129:5000/busybox
3.刪除所有的關(guān)于busybox鏡像并查看
sudo docker rmi busybox 192.168.147.129:5000/busybox //刪除busybox鏡像 sudo docker images //查看是否還有busybox鏡像的信息
4.從本地鏡像倉庫pull busybox鏡像并查看
sudo docker pull 192.168.147.129:5000/busybox sudo docker images //查看192.168.147.129:5000/busybox鏡像的信息
以上表示拉取成功了
四、反思與改進(jìn)
1.以上本地倉庫只要在同一個網(wǎng)絡(luò)中就能訪問
2.如何去更加方便的管理本地倉庫,這個值得去思考
3.以上方式并沒做身份驗證,如何做身份驗證也值得思考
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
解決docker不加載 /etc/docker/daemon.json文件的問題小結(jié)
在Ubuntu 24.04 LTS Server上安裝Docker后,發(fā)現(xiàn)鏡像不保存且配置文件路徑不正確,通過檢查發(fā)現(xiàn)Docker服務(wù)啟動時加載了非預(yù)期的配置文件,最終通過修改服務(wù)配置文件解決了問題,感興趣的朋友跟隨小編一起看看吧2024-11-11關(guān)于如何使用docker部署centos系統(tǒng)測試環(huán)境
這篇文章主要介紹了關(guān)于如何使用docker部署centos系統(tǒng)測試環(huán)境,Docker屬于操作系統(tǒng)虛擬化技術(shù),本文圖文講解部署過程,需要的朋友可以參考下2023-03-03Docker創(chuàng)建運(yùn)行多個mysql容器的方法示例
這篇文章主要介紹了Docker創(chuàng)建運(yùn)行多個mysql容器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10本地Docker安裝Postgres 12 + pgadmin的方法 (支持Apple M1)
這篇文章主要介紹了本地Docker安裝Postgres 12 + pgadmin的方法 (支持Apple M1),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03解析docker妙用SpringBoot構(gòu)建微服務(wù)實戰(zhàn)記錄
Spring Boot 是 Spring 開源組織的子項目,是 Spring 組件一站式解決方案,本文通過詳細(xì)案例給大家解析docker妙用SpringBoot構(gòu)建微服務(wù)實戰(zhàn)記錄,感興趣的朋友跟隨小編一起看看吧2021-11-11