Docker如何將本地鏡像推送到私有庫
1.下載鏡像支持
Docker Registry鏡像是使用官方鏡像來啟動私有倉庫
docker pull registry#拉取鏡像 docker images#查看鏡像
使用如上命令來拉取鏡像

2.運行鏡像
運行私有庫Registry,相當(dāng)于你在本地創(chuàng)建了一個私有庫,即Docker hub。
默認(rèn)情況,倉庫被創(chuàng)建在容器的/var/lib/registry目錄下。
我建議自行使用容器卷映射,可以有利于宿主機的協(xié)調(diào)管理。
docker run -d -p 5000:5000 -v /wang/myregistry/:/tmp/registry --privileged=true registry
/wang/myregistry是宿主機的目錄,也許這個目錄你并沒有一開始就創(chuàng)建,無需擔(dān)心,在執(zhí)行這個命令后,會自動將這個目錄創(chuàng)建好。/tmp/registry是容器內(nèi)的目錄。

3.案例
案例將以ubuntu為模板,演示如何將鏡像推送至私有庫與獲取。
(1)從倉庫獲取ubuntu鏡像到本地并運行。
docker pull ubuntu
如果沒有特殊版本要求,那直接運行pull命令拉取鏡像會直接從倉庫獲取最新版的鏡像到本地。
(2)運行鏡像
我們先將鏡像運行,然后進入容器。原始的ubuntu是不支持ifconfig的命令,所以我們可以以這個來分辨鏡像的區(qū)別。
docker images#查看是否成功拉取ubuntu docker run -it ubuntu /bin/bash#運行ubuntu鏡像成為一個容器并進入 apt-get update apt-get install net-tools#這兩行命令是讓這個容器擁有支持ifconfig命令的環(huán)境


我們還可以先驗證一下我們私有倉庫中是否有鏡像。
curl -XGET http://192.168.244.188:5000/v2/_catalog

(3)打包-上傳-查看-拉取
每個鏡像都不一樣,所以倉庫一般會設(shè)置統(tǒng)一的規(guī)范,在上傳鏡像前,我們需要對鏡像進行打包。
docker tag ubuntu 192.168.244.188:5000/myubuntu:1.1#打包 docker images#查看是否打包成功
公式是:docker tag (鏡像名):Tag Host:port/Repository:Tag
溫馨提示:每個人的host主機ip地址都不一樣,所以請不要照著復(fù)制。

我們需要修改主機的配置文件以讓其支持http。
vi /etc/docker/daemon.json#修改配置文件
{
"registry-mirrors":["https://aa25jngu.mirror.aliyuncs.com"],
"insecure-registries":["192.168.244.188:5000"]
} #增添內(nèi)容
在修改完配置文件后,重啟docker服務(wù),啟動registry服務(wù)。因為docker服務(wù)重啟,所以默認(rèn)registry服務(wù)會停止。
systemctl restart docker.service#重啟服務(wù) docker start (registry進程ID)#啟動registry服務(wù)
現(xiàn)在,我們可以開始推送鏡像到我們的私有庫中了。
docker push 192.168.244.188:5000/myubuntu:1.1

驗證看看我們是否上傳成功。
curl -XGET http://192.168.244.188:5000/v2/_catalog

到了檢驗成果的時候了,首先我們移除本身的ubutun鏡像,然后再去拉取我們上傳的鏡像,如果我們的實驗成功,那么我們拉取的ubuntu鏡像是可以直接進行ifconfig命令的。
docker pull 192.168.244.188/myubuntu:1.1#拉取鏡像 docker run -it <容器id> /bin/bash




總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker搭建簡單的應(yīng)用棧與容器Hello World訪問詳解
這篇文章主要介紹了Docker搭建簡單的應(yīng)用棧與容器Hello World訪問,結(jié)合實例形式詳細(xì)分析了Docker應(yīng)用容器棧的獲取、互聯(lián)、啟動、配置以及應(yīng)用訪問測試相關(guān)操作技巧,需要的朋友可以參考下2018-06-06
docker完整配置nginx+php+mysql的方法步驟
這篇文章主要介紹了docker完整配置nginx+php+mysql的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02
docker 動態(tài)映射運行的container端口實例詳解
這篇文章主要介紹了 docker 動態(tài)映射運行的container端口實例詳解的相關(guān)資料,需要的朋友可以參考下2016-10-10
解決docker pull被復(fù)位出現(xiàn)的問題
這篇文章主要介紹了解決docker pull被復(fù)位出現(xiàn)的問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09

