成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Docker學(xué)習(xí)之Image(鏡像)(2)

Jokcy / 3112人閱讀

摘要:而鏡像名稱是,因此將會(huì)獲取官方鏡像倉(cāng)庫(kù)中標(biāo)簽為的鏡像。如并且下載結(jié)束后,給出該鏡像完整的的摘要,以確保下載一致性。這是指用鏡像為基礎(chǔ)來啟動(dòng)容器。其中倉(cāng)庫(kù)名標(biāo)簽在之前有提到過。鏡像則是鏡像的唯一標(biāo)識(shí),一個(gè)鏡像可以對(duì)應(yīng)多個(gè)標(biāo)簽。

我們知道Image(鏡像)是Docker的三大組件之一,Docker 運(yùn)行容器前需要本地存在對(duì)應(yīng)的鏡像,如果本地不存在該鏡像,Docker 會(huì)從鏡像倉(cāng)庫(kù)下載該鏡像。接下來先看看,怎樣去獲取鏡像。
獲取鏡像

DockerHub 上有大量的高質(zhì)量的鏡像可以用,這里我們就說一下怎么獲取這些鏡像。
從 Docker 鏡像倉(cāng)庫(kù)獲取鏡像的命令是 docker pull 。其命令格式為:

docker pull [選項(xiàng)] [Docker Registry 地址[:端口號(hào)]/]倉(cāng)庫(kù)名[:標(biāo)簽]

具體的選項(xiàng)可以通過 docker pull --help 命令看到,這里我們說一下鏡像名稱的格式。

Docker 鏡像倉(cāng)庫(kù)地址:地址的格式一般是 <域名/IP>[:端口號(hào)] 。默認(rèn)地址是 Docker Hub。

倉(cāng)庫(kù)名:如之前所說,這里的倉(cāng)庫(kù)名是兩段式名稱,即 <用戶名>/<軟件名> 。對(duì)于 Docker Hub,如果不給出用戶名,則默認(rèn)為 library ,也就是官方鏡像。

先看一個(gè)例子,這里拉取ubuntu的一個(gè)鏡像:

root@huangche-PC:/# docker pull ubuntu:18.04
18.04: Pulling from library/ubuntu
6abc03819f3e: Pull complete 
05731e63f211: Pull complete 
0bd67c50d6be: Pull complete 
Digest: sha256:f08638ec7ddc90065187e7eabdfac3c96e5ff0f6b2f1762cf31a4f49b53000a5
Status: Downloaded newer image for ubuntu:18.04

上面的命令中沒有給出 Docker 鏡像倉(cāng)庫(kù)地址,因此將會(huì)從 Docker Hub 獲取鏡像。而鏡像名稱是 ubuntu:18.04 ,因此將會(huì)獲取官方鏡像 library/ubuntu倉(cāng)庫(kù)中標(biāo)簽為 18.04 的鏡像。其中l(wèi)ibrary表示組。

從下載過程中可以看到我們之前提及的分層存儲(chǔ)的概念,鏡像是由多層存儲(chǔ)所構(gòu)成。下載也是一層層的去下載,并非單一文件。下載過程中給出了每一層的 ID 的前 12 位。如:6abc03819f3e: Pull complete ,并且下載結(jié)束后,給出該鏡像完整的 sha256 的摘要,以確保下載一致性。

運(yùn)行

通過docker pull 命令獲取到鏡像以后,就可以以這個(gè)鏡像為基礎(chǔ)啟動(dòng)并運(yùn)行一個(gè)容器。以上面的ubuntu:18.04 為例,如果我們打算啟動(dòng)里面的 bash 并且進(jìn)行交互式操作的話,可以執(zhí)行下面的命令。

docker run -it --rm 
ubuntu:18.04 
bash


從上圖就可以看出,我們進(jìn)入了一個(gè)以u(píng)buntu:18.04鏡像為基礎(chǔ)的容器環(huán)境了(其實(shí)也就是進(jìn)入了一個(gè)ubuntu系統(tǒng)),也可以進(jìn)行shell操作了,可以通過ls -al查看下:

通過 cat /etc/os-release來查看下該系統(tǒng)的一些基本信息:


再看下

docker run -it --rm 
ubuntu:18.04 
bash

這個(gè)命令的意思表示啥

it :這是兩個(gè)參數(shù),一個(gè)是 -i :交互式操作,一個(gè)是 -t 終端。我們這里打算進(jìn)入 bash 執(zhí)行一些命令并查看返回結(jié)果,因此我們需要交互式終端。

rm :這個(gè)參數(shù)是說容器退出后隨之將其刪除。默認(rèn)情況下,為了排障需求,退出的容器并不會(huì)立即刪除,除非手動(dòng) docker rm 。我們這里只是隨便執(zhí)行個(gè)命令,看看結(jié)果,不需要排障和保留結(jié)果,因此使用 --rm 可以避免浪費(fèi)空間。ubuntu:18.04 :這是指用 ubuntu:18.04 鏡像為基礎(chǔ)來啟動(dòng)容器。

bash :放在鏡像名后的是 命令,這里我們希望有個(gè)交互式 Shell,因此用的是 bash 。

最后我們通過 exit 退出了這個(gè)容器。

列出鏡像

在使用Docker的過程中,難免需要查看下本地已經(jīng)存在的可使用的鏡像的一些信息,這時(shí)候可以使用docker image ls命令來進(jìn)行查看:

列表包含了 倉(cāng)庫(kù)名 、 標(biāo)簽 、 鏡像 ID 、 創(chuàng)建時(shí)間 以及 所占用的空間 。
其中倉(cāng)庫(kù)名、標(biāo)簽在之前有提到過。鏡像 ID 則是鏡像的唯一標(biāo)識(shí),一個(gè)鏡像可以對(duì)應(yīng)多個(gè) 標(biāo)簽。因此,在上面的例子中,我們可以看到ubuntu:18.04 和 ubuntu:latest 擁有相同的 ID,因?yàn)樗鼈儗?duì)應(yīng)的是同一個(gè)鏡像。

刪除本地鏡像

對(duì)于用不到的鏡像,可以通過docker image rm命令進(jìn)行刪除操作,格式為:

docker image rm [選項(xiàng)] <鏡像1> [<鏡像2> ...]

其中, <鏡像> 可以是 鏡像短 ID 、 鏡像長(zhǎng) ID 、 鏡像名 或者 鏡像摘要 。

看到圖中列出了三個(gè)鏡像,接下來對(duì)ngnix這個(gè)鏡像進(jìn)行刪除操作:

我們可以用鏡像的完整 ID,也稱為 長(zhǎng) ID ,來刪除鏡像。使用腳本的時(shí)候可能會(huì)用長(zhǎng) ID,但是人工輸入就太累了,所以更多的時(shí)候是用 短 ID 來刪除鏡像。 docker image ls 默認(rèn)列出的就已經(jīng)是短 ID 了,一般取前3個(gè)字符以上,只要足夠區(qū)分于別的鏡像就可以了。

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

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

相關(guān)文章

  • Docker學(xué)習(xí)之基本概念及安裝(1)

    摘要:分層存儲(chǔ)因?yàn)殓R像包含操作系統(tǒng)完整的文件系統(tǒng),其體積往往是龐大的,因此在設(shè)計(jì)時(shí),就充分利用的技術(shù),將其設(shè)計(jì)為分層存儲(chǔ)的架構(gòu)。分層存儲(chǔ)的特征還使得鏡像的復(fù)用定制變的更為容易。 什么是Docker Docker 是一個(gè)開源的應(yīng)用容器引擎,基于 Go 語言 并遵從Apache2.0協(xié)議開源。Docker 可以讓開發(fā)者打包他們的應(yīng)用以及依賴包到一個(gè)輕量級(jí)、可移植的容器中,然后發(fā)布到任何流行的 L...

    lvzishen 評(píng)論0 收藏0
  • Docker學(xué)習(xí)之Compose介紹(6)

    摘要:列出項(xiàng)目中目前的所有容器。刪除所有停止?fàn)顟B(tài)的服務(wù)容器。一般的,當(dāng)指定數(shù)目多于該服務(wù)當(dāng)前實(shí)際運(yùn)行容器,將新創(chuàng)建并啟動(dòng)容器反之,將停止容器。命令說明恢復(fù)處于暫停狀態(tài)中的服務(wù)。 Compose 項(xiàng)目是 Docker 官方的開源項(xiàng)目,負(fù)責(zé)實(shí)現(xiàn)對(duì) Docker 容器集群的快速編排。其代碼目前在 https://github.com/docker/com... 上開源。 介紹 Compose 定位...

    luodongseu 評(píng)論0 收藏0
  • Docker學(xué)習(xí)之Compose介紹(6)

    摘要:列出項(xiàng)目中目前的所有容器。刪除所有停止?fàn)顟B(tài)的服務(wù)容器。一般的,當(dāng)指定數(shù)目多于該服務(wù)當(dāng)前實(shí)際運(yùn)行容器,將新創(chuàng)建并啟動(dòng)容器反之,將停止容器。命令說明恢復(fù)處于暫停狀態(tài)中的服務(wù)。 Compose 項(xiàng)目是 Docker 官方的開源項(xiàng)目,負(fù)責(zé)實(shí)現(xiàn)對(duì) Docker 容器集群的快速編排。其代碼目前在 https://github.com/docker/com... 上開源。 介紹 Compose 定位...

    Jensen 評(píng)論0 收藏0
  • Docker學(xué)習(xí)之Dockerfile 構(gòu)建鏡像(3)

    摘要:我們可以了解到,鏡像的定制實(shí)際上就是定制每一層所添加的配置文件。指令之指令的目的就是來指定基礎(chǔ)鏡像。指令之指令是用來執(zhí)行命令行命令的。由于命令行的強(qiáng)大能力,指令在定制鏡像時(shí)是最常用的指令之一。構(gòu)建鏡像這里我們使用了命令進(jìn)行鏡像構(gòu)建。 我們可以了解到,鏡像的定制實(shí)際上就是定制每一層所添加的配置、文件。如果我們可以把每一層修改、安裝、構(gòu)建、操作的命令都寫入一個(gè)腳本,用這個(gè)腳本來構(gòu)建、定制鏡...

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

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

0條評(píng)論

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