亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Docker零基礎(chǔ)入門指南(五):Docker倉庫使用

silenceboy / 1328人閱讀

摘要:原文地址零基礎(chǔ)入門指南五倉庫是集中存放鏡像的地方。最常使用的公開服務(wù)是官方的,這也是默認(rèn)的,并擁有大量的高質(zhì)量的官方鏡像。登錄可以通過執(zhí)行命令交互式的輸入用戶名及密碼來完成在命令行界面登錄。使用將這個(gè)鏡像標(biāo)記為。

原文地址:Docker零基礎(chǔ)入門指南(五)

倉庫( Repository )是集中存放鏡像的地方。一個(gè)容易混淆的概念是注冊(cè)服務(wù)器( Registry )。實(shí)際上注冊(cè)服務(wù)器是管理倉庫的具體服務(wù)器,每個(gè)服務(wù)器上可以有多個(gè)倉庫,而每個(gè)倉庫下面有多個(gè)鏡像。從這方面來說,倉庫可以被認(rèn)為是一個(gè)具體的項(xiàng)目或目錄。例如對(duì)于倉庫地址 dl.dockerpool.com/ubuntu 來說,dl.dockerpool.com 是注冊(cè)服務(wù)器地址, ubuntu 是倉庫名。

Docker Registry

Docker Registry用來提供集中的存儲(chǔ)、分發(fā)鏡像的服務(wù)。
一個(gè) Docker Registry 中可以包含多個(gè)倉庫(Repository);每個(gè)倉庫可以包含多個(gè)標(biāo)簽(Tag);每個(gè)標(biāo)簽對(duì)應(yīng)一個(gè)鏡像。
通常,一個(gè)倉庫會(huì)包含同一個(gè)軟件不同版本的鏡像,而標(biāo)簽就常用于對(duì)應(yīng)該軟件的各個(gè)版本。我們可以通過 <倉庫名>:<標(biāo)簽> 的格式來指定具體是這個(gè)軟件哪個(gè)版本的鏡像。如果不給出標(biāo)簽,將以 latest 作為默認(rèn)標(biāo)簽。

以 Ubuntu 鏡像 為例,ubuntu 是倉庫的名字,其內(nèi)包含有不同的版本標(biāo)簽,如,14.04, 16.04。我們可以通過 ubuntu:14.04,或者 ubuntu:16.04 來具體指定所需哪個(gè)版本的鏡像。如果忽略了標(biāo)簽,比如 ubuntu,那將視為 ubuntu:latest。

倉庫名經(jīng)常以 兩段式路徑 形式出現(xiàn),比如 jwilder/nginx-proxy,前者往往意味著 Docker Registry 多用戶環(huán)境下的用戶名,后者則往往是對(duì)應(yīng)的軟件名。但這并非絕對(duì),取決于所使用的具體 Docker Registry 的軟件或服務(wù)。

Docker Hub

最常使用的 Registry 公開服務(wù)是官方的 Docker Hub,這也是默認(rèn)的 Registry,并擁有大量的高質(zhì)量的官方鏡像。

注冊(cè)

可以在 https://cloud.docker.com 免費(fèi)注冊(cè)一個(gè) Docker 賬號(hào)。

登錄

可以通過執(zhí)行 docker login 命令交互式的輸入用戶名及密碼來完成在命令行界面登錄Docker Hub??梢酝ㄟ^ docker logout 退出登錄。

拉取鏡像
可以通過 docker search 命令來查找官方倉庫中的鏡像,并利用 docker pull 命令來將它下載到本地。

推送鏡像
用戶也可以在登錄后通過 docker push 命令來將自己的鏡像推送到 Docker Hub。

自動(dòng)創(chuàng)建
自動(dòng)創(chuàng)建(Automated Builds)功能對(duì)于需要經(jīng)常升級(jí)鏡像內(nèi)程序來說,十分方便。有時(shí)候,用戶創(chuàng)建了鏡像,安裝了某個(gè)軟件,如果軟件發(fā)布新版本則需要手動(dòng)更新鏡像。而自動(dòng)創(chuàng)建允許用戶通過 Docker Hub 指定跟蹤一個(gè)目標(biāo)網(wǎng)站(目前支持 GitHub 或 BitBucket)上的項(xiàng)目,一旦項(xiàng)目發(fā)生新的提交或者創(chuàng)建新的標(biāo)簽(tag),Docker Hub 會(huì)自動(dòng)構(gòu)建鏡像并推送到 Docker Hub 中。要配置自動(dòng)創(chuàng)建,包括如下的步驟:

創(chuàng)建并登錄 Docker Hub,以及目標(biāo)網(wǎng)站;

在目標(biāo)網(wǎng)站中連接帳戶到 Docker Hub

在 Docker Hub 中 配置一個(gè)自動(dòng)創(chuàng)建

選取一個(gè)目標(biāo)網(wǎng)站中的項(xiàng)目(需要含 Dockerfile )和分支

指定 Dockerfile 的位置,并提交創(chuàng)建

之后,可以在 Docker Hub 的 自動(dòng)創(chuàng)建頁面 中跟蹤每次創(chuàng)建的狀態(tài)。

私有 Docker Registry

除了使用公開服務(wù)外,用戶還可以在本地搭建私有 Docker Registry。Docker 官方提供了 Docker Registry 鏡像,可以直接使用做為私有 Registry 服務(wù)。
docker-registry 是官方提供的工具,可以用于構(gòu)建私有的鏡像倉庫。以下內(nèi)容基于dockerregistry v2.x 版本。

安裝運(yùn)行 docker-registry
可以通過獲取官方 registry 鏡像來運(yùn)行

$ docker run -d -p 5000:5000 --restart=always --name registry registry

這將使用官方的 registry 鏡像來啟動(dòng)私有倉庫。默認(rèn)情況下,倉庫會(huì)被創(chuàng)建在容器的/var/lib/registry 目錄下??梢酝ㄟ^ -v 參數(shù)來將鏡像文件存放在本地的指定路徑。

$ docker run -d 
-p 5000:5000 
-v /opt/data/registry:/var/lib/registry 
registry

在私有倉庫上傳、搜索、下載鏡像

創(chuàng)建好私有倉庫之后,就可以使用 docker tag 來標(biāo)記一個(gè)鏡像,然后推送它到倉庫。例如私有倉庫地址為 127.0.0.1:5000 。

先在本機(jī)查看已有的鏡像。

$ docker image ls
REPOSITORY TAG IMAGE ID CREATED
VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago
192.7 MB

使用 docker tag 將 ubuntu:latest 這個(gè)鏡像標(biāo)記為 127.0.0.1:5000/ubuntu:latest 。
格式為 docker tag IMAGE[:TAG] [REGISTRY_HOST[:REGISTRY_PORT]/]REPOSITORY[:TAG]

$ docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED
VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago
192.7 MB
127.0.0.1:5000/ubuntu:latest latest ba5877dc9bec 6 weeks ago
192.7 MB

使用 docker push 上傳標(biāo)記的鏡像。

$ docker push 127.0.0.1:5000/ubuntu:latest
The push refers to repository [127.0.0.1:5000/ubuntu]
373a30c24545: Pushed
a9148f5200b0: Pushed
cdd3de0940ab: Pushed
fc56279bbb33: Pushed
b38367233d37: Pushed
2aebd096e0e2: Pushed
latest: digest: sha256:fe4277621f10b5026266932ddf760f5a756d2facd505a94d2da12f4f52f71f5
a size: 1568

用 curl 查看倉庫中的鏡像。

$ curl 127.0.0.1:5000/v2/_catalog
{"repositories":["ubuntu"]}

這里可以看到 {"repositories":["ubuntu"]} ,表明鏡像已經(jīng)被成功上傳了。

先刪除已有鏡像,再嘗試從私有倉庫中下載這個(gè)鏡像。

$ docker image rm 127.0.0.1:5000/ubuntu:latest
$ docker pull 127.0.0.1:5000/ubuntu:latest
Pulling repository 127.0.0.1:5000/ubuntu:latest
ba5877dc9bec: Download complete
511136ea3c5a: Download complete
9bad880da3d2: Download complete
25f11f5fb0cb: Download complete
ebc34468f71d: Download complete
2318d26665ef: Download complete

(本文出自itcsdaixie.com,轉(zhuǎn)載請(qǐng)注明出處)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/27320.html

相關(guān)文章

  • Docker基礎(chǔ)入門指南(三):Docker Hello World

    摘要:原文地址零基礎(chǔ)入門指南三允許你在容器內(nèi)運(yùn)行應(yīng)用程序,使用命令來在容器內(nèi)運(yùn)行一個(gè)應(yīng)用程序。由于官方提供的文件,都放在組里面,所以它的是默認(rèn)組,可以省略。如果發(fā)現(xiàn)本地沒有指定的文件,就會(huì)從倉庫自動(dòng)抓取。因此,前面的命令并不是必需的步驟。 原文地址:Docker零基礎(chǔ)入門指南(三) Docker Hello World Docker 允許你在容器內(nèi)運(yùn)行應(yīng)用程序, 使用 docker run...

    tracymac7 評(píng)論0 收藏0
  • Docker基礎(chǔ)入門指南(四):Docker容器使用

    摘要:原文地址零基礎(chǔ)入門指南四啟動(dòng)容器啟動(dòng)容器有兩種方式,一種是基于鏡像新建一個(gè)容器并啟動(dòng),另外一個(gè)是將在終止?fàn)顟B(tài)的容器重新啟動(dòng)。此外,當(dāng)容器中指定的應(yīng)用終結(jié)時(shí),容器也自動(dòng)終止。命令命令用于進(jìn)入一個(gè)正在運(yùn)行的容器。 原文地址:Docker零基礎(chǔ)入門指南(四) 啟動(dòng)容器 啟動(dòng)容器有兩種方式,一種是基于鏡像新建一個(gè)容器并啟動(dòng),另外一個(gè)是將在終止?fàn)顟B(tài)(stopped)的容器重新啟動(dòng)。因?yàn)镈ocke...

    mj 評(píng)論0 收藏0
  • Docker學(xué)習(xí)之路()鏡像的基本操作

    摘要:一個(gè)鏡像可以放到另一個(gè)京廣線的頂部,位于下面的鏡像稱為父鏡像,最底部的稱為基礎(chǔ)鏡像。鏡像是基于聯(lián)合文件系統(tǒng)的一種層式的結(jié)構(gòu),由一系列指令一步步構(gòu)建處理。拉取鏡像使用命令啟動(dòng)一個(gè)鏡像時(shí),會(huì)檢查本地是否存在該鏡像。 什么是鏡像 Docker鏡像時(shí)由文件系統(tǒng)疊加而成,最底端是一個(gè)引導(dǎo)文件系統(tǒng),即bootfs,這很像典型的Linux/Unix的引導(dǎo)文件系統(tǒng)。Docker用戶幾乎永遠(yuǎn)不會(huì)和引導(dǎo)...

    yunhao 評(píng)論0 收藏0
  • Docker 快速上手學(xué)習(xí)入門教程

    摘要:各組件結(jié)構(gòu)下載安裝啟動(dòng)的官方文檔上提供了非常詳細(xì)的安裝流程,簡(jiǎn)單摘錄在上下載社區(qū)版并安裝的操作命令當(dāng)控制臺(tái)輸出加一大段介紹文字時(shí),安裝就大功告成了。 原文鏈接:http://tabalt.net/blog/docker... Docker是一個(gè)使用Golang開發(fā)的開源應(yīng)用容器引擎,讓開發(fā)者可以打包應(yīng)用和依賴到一個(gè)輕量級(jí)、可移植的鏡像中,然后分發(fā)到任何流行的Linux機(jī)器上,并在這些機(jī)...

    leanxi 評(píng)論0 收藏0
  • Docker基礎(chǔ)入門指南(一):Docker介紹

    摘要:原文地址零基礎(chǔ)入門指南一介紹簡(jiǎn)介源代碼托管在上,公司開源的一個(gè)基于技術(shù)之上構(gòu)建的容器引擎,基于語言并遵從協(xié)議開源。通過等實(shí)現(xiàn)內(nèi)核虛擬化技術(shù),并提供容器的資源隔離與安全保障等。 原文地址:Docker零基礎(chǔ)入門指南(一):Docker介紹 Docker簡(jiǎn)介 Docker源代碼托管在 GitHub上,Docker 公司開源的一個(gè)基于LXC技術(shù)之上構(gòu)建的Container容器引擎,基于Go...

    DevTTL 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<