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