亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

初次使用Docker的體驗(yàn)筆記總結(jié)

 更新時(shí)間:2016年11月03日 17:17:12   作者:提里科留斯  
這篇文章主要介紹了初次使用Docker的體驗(yàn)筆記總結(jié),對(duì)初學(xué)Docker具有一定的參考價(jià)值,有需要的可以了解一下。

一、前言

Docker容器已經(jīng)發(fā)布許久,但作為一名程序員如今才開始接觸,實(shí)在是罪過……

在此之前,我還沒有對(duì)Docker進(jìn)行過深入的了解,對(duì)它的認(rèn)識(shí)仍停留在:這是一種新型的虛擬機(jī)。這樣的層面。今天就我的初次體驗(yàn)進(jìn)行記錄。聲明一點(diǎn):以下內(nèi)容大部分是主觀片面的,另有來自百度的(嗯,就是百度)。要是有什么說的不對(duì),或者是理解有問題的地方,還請(qǐng)大家告訴我,先謝謝大家了。

二、環(huán)境

我的基礎(chǔ)運(yùn)行環(huán)境是運(yùn)行在Win10專業(yè)版HyperV虛擬機(jī)中的CentOS7-Minimal版本。新裝的虛擬機(jī),保證運(yùn)行環(huán)境不受奇奇怪怪的東西影響。

CentOS安裝Docker簡(jiǎn)潔明快:sudo yum install docker -y。等著就行……安裝內(nèi)容如下:

三、啟動(dòng)Docker服務(wù)

與安裝一樣簡(jiǎn)潔明快:sudo systemctl start docker。如果沒有報(bào)錯(cuò),那就是啟動(dòng)完成了。(我喜歡用systemctl,反正只要能啟動(dòng)服務(wù),你想咋啟動(dòng)就咋啟動(dòng)。)命令沒有回顯,我就不截圖了。

、獲取容器鏡像

Docker提供鏡像搜索命令(search),方便你快速找到自己想要的鏡像。當(dāng)然,鏡像的源你可以自己配置,默認(rèn)是docker.io。我只打算找一個(gè)CentOS的鏡像,所以默認(rèn)的源就行。搜索命令如下:

可以看到,搜索到好多鏡像。最后兩列字面意思我沒理解,但是應(yīng)該是標(biāo)記官方鏡像和開發(fā)者上傳的鏡像。我選擇第一個(gè),標(biāo)記著“官方的”,應(yīng)該沒有裝任何其他的東西。

嗯,接下來就是下載(pull)鏡像了。命令如下(渣渣網(wǎng)速):

可以看到,默認(rèn)下載的是最新的(latest)。當(dāng)然,你可以下載其他非最新的版本,具體操作請(qǐng)查詢pull命令的相關(guān)參數(shù)。我只要最新的(傲嬌臉)。這個(gè)鏡像大小也是6 。這么小,估計(jì)真的是什么都沒裝吧(還是壓縮了?)……

上面是下載完成后顯示的信息。

五、創(chuàng)建容器

接下來就是從剛下載的鏡像創(chuàng)建一個(gè)容器了。新的容器的所有內(nèi)容都會(huì)從鏡像里拷貝(那個(gè)改是拷貝吧)。

聲明:由于輸入sudo太麻煩,所以下面的演示都用root用戶執(zhí)行。

創(chuàng)建容器(run)命令就比較復(fù)雜了,參數(shù)較多:

如上,我來一個(gè)一個(gè)解釋:

  • -itd:這是 -i -t -d 的簡(jiǎn)寫。-i 表示保持打開標(biāo)準(zhǔn)輸入流(stdin),無論是否連接到此容器。-t 為容器分配一個(gè)虛擬的tty。-d 表示后臺(tái)模式運(yùn)行容器,即容器啟動(dòng)后將斷開與當(dāng)前終端的連接。(之后會(huì)演示怎么再連回來)。
  • --name:這是為容器起一個(gè)名字,之后與容器的交互需要用到,當(dāng)然用容器的Id也是可以的(就是run命令后那個(gè)巨長(zhǎng)的回顯)。當(dāng)然,不寫的話也會(huì)有默認(rèn)的名字。
  • -v:表示掛載宿主機(jī)(這個(gè)稱呼對(duì)嗎?)目錄到容器的目錄(宿主機(jī)目錄路徑:容器目錄路徑)。當(dāng)然可以設(shè)置讀寫屬性,這個(gè)就不說了,可以自行探索。
  • -p:表示映射(端口轉(zhuǎn)發(fā)?)主機(jī)端口至容器端口(主機(jī)端口:容器端口)。這個(gè)參數(shù)可以重復(fù)出現(xiàn),映射多個(gè)端口。這個(gè)參數(shù)也有許多情況,也請(qǐng)自行探索。
  • centos:這個(gè)是本地鏡像名稱(centos),必須是已經(jīng)下載(pull)到本地的鏡像。當(dāng)然,若是本地沒有,Docker會(huì)執(zhí)行search并詢問你是不是要下載。
  • /bin/bash:這個(gè)是本次啟動(dòng)的鏡像要執(zhí)行的任務(wù)。這個(gè)門道比較多,我在后面會(huì)說一下。
  • 此處省略了-a參數(shù)。-a參數(shù)可以指定連接準(zhǔn)輸入流(STDIN)、標(biāo)準(zhǔn)輸出流(STDOUT)和標(biāo)準(zhǔn)錯(cuò)誤流(STDERR),默認(rèn)好像是都連接。可以顯式使用,以連接指定的流。

以上就是命令的相關(guān)解釋,是我自己配合百度理解的,要是有不對(duì)的,請(qǐng)大家留言哦。

六、查看容器

使用docker ps -a 命令可以查看當(dāng)前存在的所有容器:

如上,我只運(yùn)行了一個(gè)容器。命令顯示了容器的ID、使用的鏡像、運(yùn)行的命令、創(chuàng)建時(shí)間、運(yùn)行時(shí)間、端口映射、名稱。

七、連接容器

連接容器有多種辦法。在宿主機(jī)中使用Docker的attach命令,即可連接到容器:

如上,就已經(jīng)連接到容器了??梢钥吹矫钚行畔⒌淖兓?。

我使用了ps命令查看了容器中的進(jìn)程??梢钥吹揭粋€(gè)ID為1的進(jìn)程,這個(gè)進(jìn)程就是run命令最后的那個(gè)參數(shù)。Run命令所指定的任務(wù)進(jìn)程Id一定是1 。我們使用attach命令連接的也是這個(gè)命令的標(biāo)準(zhǔn)輸入輸出流(錯(cuò)誤流我不知道連接了沒)。由于run指定的命令是bash,所以attach也是連接到了bash,這樣就能隨意操作容器了。

關(guān)閉連接很容易想到,就是退出bash:exit。

但是、但是、但是,這樣退出會(huì)導(dǎo)致一個(gè)問題,那時(shí)就是:容器因?yàn)?號(hào)進(jìn)程的退出(就是attach命令連接的bash),會(huì)認(rèn)為任務(wù)已完成,容器就停止了。

如上,容器已經(jīng)停止了(Exited)。

所以,我建議使用exec命令對(duì)容器進(jìn)行操作。我們重啟容器:

可以看到,start 加容器名稱就能啟動(dòng)。

使用exec命令,可以讓容器直接執(zhí)行命令(docker exec 容器名稱 命令):

如上,是我用exec對(duì)nethost執(zhí)行ps命令查看進(jìn)程,執(zhí)行l(wèi)s命令列出根目錄。

也可以用exec執(zhí)行bash并掛載輸入輸出流:

如上,是我用exec命令啟動(dòng)bash并掛載輸入輸出流。-it參數(shù)的意義和run命令相同,不同的是沒有使用-d命令,這樣(前臺(tái)模式)可以使命令執(zhí)行后直接連接輸入輸出流。我執(zhí)行了ls命令和ps命令。

從ps命令的顯示可以看出,exec命令啟動(dòng)了一個(gè)新的bash,PID為24(當(dāng)然,PID應(yīng)該是隨機(jī)賦值的)。區(qū)別于PID為1的bash,我們當(dāng)前連接的就是這個(gè)PID為24的bash,一樣可以執(zhí)行命令,隨意操作。并且退出之后,也不會(huì)影響PID為1的bash,這樣就可以使容器繼續(xù)運(yùn)行。

上圖可見,我退出了容器的bash后,容器依然在運(yùn)行。我在宿主機(jī)中使用exec執(zhí)行ps命令后,nethost這個(gè)容器中1號(hào)進(jìn)程仍然在運(yùn)行。

八、停止和刪除容器

上面提到了啟動(dòng)容器(start)命令,停止容器當(dāng)然是停止命令(stop)了。

stop命令執(zhí)行效果如上。

刪除容器更容易,使用rm命令:

如上,我刪除了名為nethost的容器,因?yàn)橹挥幸粋€(gè)容器,所以刪除之后九沒有容器了。要注意的是:rm命令只能刪除已經(jīng)停止的容器。并且rm命令不像linux的rm命令那樣會(huì)有刪除確認(rèn),docker的rm命令會(huì)直接刪除容器,所以用的時(shí)候要小心。

十、其他

其他的內(nèi)容,如:備份、遷移、上傳鏡像等,我還沒有試過,暫時(shí)不進(jìn)行記錄。

相關(guān)文章

  • docker的常用命令詳解

    docker的常用命令詳解

    這篇文章主要列舉了docker的常用命令,本文給大家介紹的非常詳細(xì),有需要的朋友可以參考閱讀
    2023-04-04
  • 使用Docker compose編排Laravel應(yīng)用的方法

    使用Docker compose編排Laravel應(yīng)用的方法

    本篇文章主要介紹了使用Docker compose編排Laravel應(yīng)用的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • docker保存鏡像到本地并加載本地鏡像文件詳解

    docker保存鏡像到本地并加載本地鏡像文件詳解

    平常我們下載docker鏡像會(huì)通過配置國(guó)內(nèi)源來加速下載,但是有時(shí)候會(huì)有另外的需求,比如某個(gè)機(jī)器不能聯(lián)網(wǎng),我們就需要從其他機(jī)器下載,打包后,拷貝到這個(gè)機(jī)器,下面這篇文章主要給大家介紹了關(guān)于docker保存鏡像到本地并加載本地鏡像文件的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Docker數(shù)據(jù)存儲(chǔ)之tmpfs mounts詳解

    Docker數(shù)據(jù)存儲(chǔ)之tmpfs mounts詳解

    今天小編就為大家分享一篇關(guān)于Docker數(shù)據(jù)存儲(chǔ)之tmpfs mounts詳解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 詳解使用Docker進(jìn)行Redis主從復(fù)制實(shí)踐

    詳解使用Docker進(jìn)行Redis主從復(fù)制實(shí)踐

    這篇文章主要介紹了詳解使用Docker進(jìn)行Redis主從復(fù)制實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • docker for windonws之Windows 10 家庭中文版安裝clickhouse 22.3版本及配置過程

    docker for windonws之Windows 10 家庭中文版安裝cl

    這篇文章主要介紹了docker for windonws之Windows 10 家庭中文版安裝clickhouse 22.3版本及配置,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • idea配置docker插件的方法步驟(圖文)

    idea配置docker插件的方法步驟(圖文)

    本文主要介紹了idea配置docker插件的方法步驟,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • Windows安裝docker-desktop的詳細(xì)步驟

    Windows安裝docker-desktop的詳細(xì)步驟

    這篇文章主要介紹了Windows安裝docker-desktop的詳細(xì)步驟,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • Windows10系統(tǒng)下Docker默認(rèn)存儲(chǔ)位置更改方案

    Windows10系統(tǒng)下Docker默認(rèn)存儲(chǔ)位置更改方案

    這篇文章主要給大家介紹了關(guān)于Windows10系統(tǒng)下Docker默認(rèn)存儲(chǔ)位置更改方案的相關(guān)資料,在Docker中存儲(chǔ)路徑是一個(gè)重要的話題,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-08-08
  • CentOS7部署19版docker(簡(jiǎn)單,可跟做)

    CentOS7部署19版docker(簡(jiǎn)單,可跟做)

    這篇文章主要介紹了CentOS7部署19版docker,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評(píng)論