国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

走進(jìn)docker系列:開篇

darkbug / 2431人閱讀

摘要:包含的內(nèi)容本系列主要介紹三個(gè)上的項(xiàng)目由于只介紹核心的東西,所以不會包含下面這些項(xiàng)目使用語言開發(fā),將多個(gè)相關(guān)的容器配置在一起,從而可以同時(shí)創(chuàng)建啟動停止和監(jiān)控它們。由于本人時(shí)間安排發(fā)生變化,本系列停止更新,后面不確定是否會繼續(xù),非常抱歉。

本人docker初學(xué)者,邊學(xué)習(xí)邊總結(jié),一方面加深自己的理解,另一方面希望對其他想深入了解docker的同學(xué)有所幫助。

由于本人缺乏實(shí)戰(zhàn)經(jīng)驗(yàn),錯(cuò)誤在所難免,歡迎批評指正,謝謝。

包含的內(nèi)容

本系列主要介紹三個(gè)github上的項(xiàng)目: moby、containerd、runc.

由于只介紹docker核心的東西,所以不會包含下面這些項(xiàng)目:

compose:使用Python語言開發(fā),將多個(gè)相關(guān)的容器配置在一起,從而可以同時(shí)創(chuàng)建、啟動、停止和監(jiān)控它們。

machine:幫助安裝docker到指定位置,包括本地虛擬機(jī)、遠(yuǎn)端云主機(jī)等,同時(shí)還管理這些主機(jī)的信息,可以很方便的操作安裝在不同主機(jī)上的這些docker。

kitematic:桌面版的docker客戶端(圖形界面),使用JavaScript基于electron開發(fā)。

toolbox:幫助安裝docker環(huán)境到Windows和Mac平臺,包括Docker引擎、Compose、 Machine和 Kitematic,當(dāng)然docker引擎是安裝在虛擬機(jī)里面的,本地只有客戶端,使用哪個(gè)虛擬機(jī)依賴于平臺,toolbox會幫你搞定這一切。

distribution:Registry 2.0的實(shí)現(xiàn),主要是管理和分發(fā)docker鏡像,Docker Hub背后的技術(shù)。

swarmkit:嵌入在docker里面的容器編排系統(tǒng),可以簡單的把它和docker的關(guān)系理解成IE瀏覽器和Windows的關(guān)系,捆綁銷售。

面向讀者

本系列主要專注docker背后的技術(shù)和實(shí)現(xiàn)思路不介紹怎么使用docker,不介紹代碼細(xì)節(jié)

如果你是docker初學(xué)者,想了解怎么使用docker,那么本系列不適合你。

如果你已經(jīng)熟悉了基本的操作,想了解下高級點(diǎn)的參數(shù),或者想了解背后到底發(fā)生了什么,便于自己更好的使用docker,更好的解決碰到的問題,那么本系列適合你。

如果你是一名開發(fā)人員,想了解docker的代碼實(shí)現(xiàn)細(xì)節(jié),但又不知道從何處下手,本系列也許會給你一些啟發(fā)。

docker版本

自從docker決定將swarm整合進(jìn)來弄企業(yè)版之后,代碼一直在調(diào)整,docker的一些目錄和程序名稱也在發(fā)生變化,所以本系列的內(nèi)容沒法覆蓋所有docker版本,只能挑其中的一個(gè)。

自v17.03開始,docker采用了新的發(fā)行方式,版本的發(fā)行周期變成了一個(gè)月一次,并且也分了企業(yè)版和社區(qū)版,在本系列中,將以v17.03社區(qū)版作為參考,建議大家閱讀本系列時(shí),手頭的docker版本不低于v17.03。

docker完整的變更列表請參考這里。

docker和moby的關(guān)系

2017-04-18,在DockerCon 2017上,docker公司正式宣布成立moby項(xiàng)目,同時(shí)將github上的docker/docker項(xiàng)目重命名成了moby/moby,雖然會自動重定向,但代碼里的相關(guān)引用不排除會有問題,需要留意。

這里不評價(jià)這次變化,對普通使用者來說,不會發(fā)生任何變化,還是熟悉的命令,熟悉的參數(shù),對開發(fā)人員來說,代碼的位置變了,但代碼還是那份代碼。

以后moby會變成什么樣,現(xiàn)在還不清楚,有可能和docker的關(guān)系會變成blink和chrome的關(guān)系一樣,靜觀其變,希望不要影響我們學(xué)習(xí)。

注意:若沒有特別說明,本系列提到的docker源碼,都指的是moby的代碼

文章列表

該系列的所有文章都會列在這里,便于大家選擇閱讀。由于本人時(shí)間安排發(fā)生變化,本系列停止更新,后面不確定是否會繼續(xù),非常抱歉。

走進(jìn)docker(01):hello-world的背后發(fā)生了什么?

走進(jìn)docker(02):image(鏡像)是什么?

走進(jìn)docker(03):如何繞過docker運(yùn)行hello-world?

走進(jìn)docker(04):什么是容器的runtime?

走進(jìn)docker(05):docker在本地如何管理image(鏡像)?

走進(jìn)docker(06):docker create命令背后發(fā)生了什么?

走進(jìn)docker(07):docker start命令背后發(fā)生了什么?

建議閱讀

在閱讀本系列之前,如果對Linux不是很熟的話,建議先閱讀本人的Linux程序員專欄,里面包含了內(nèi)存、CPU、文件系統(tǒng)、網(wǎng)絡(luò)、namespace、cgroup等方面的詳細(xì)內(nèi)容,和docker相關(guān)的Linux知識還在更新中,敬請關(guān)注。

獲取docker相關(guān)的代碼

由于現(xiàn)在docker依賴的containerd和runc是github上兩個(gè)多帶帶的項(xiàng)目,如果你需要分析docker的代碼,請確保containerd和runc的版本和docker的版本是一致的,檢查辦法如下:

#假設(shè)我們已經(jīng)將docker的源代碼clone到了/home/dev/repos/docker目錄下
dev@debian:~/repos/docker$ git branch
* master

#列出17.03相關(guān)的tag
dev@debian:~/repos/docker$ git tag|grep 17.03
v17.03.0-ce
v17.03.0-ce-rc1
v17.03.1-ce
v17.03.1-ce-rc1

#取最新的v17.03.1-ce
dev@debian:~/repos/docker$ git checkout -b v17.03.1-ce v17.03.1-ce
Switched to a new branch "v17.03.1-ce"
dev@debian:~/repos/docker$ git branch
  master
* v17.03.1-ce

#查看docker所用的runc和containerd的commit id
dev@debian:~/repos/docker$ egrep "RUNC_COMMIT|CONTAINERD_COMMIT" ./hack/dockerfile/binaries-commits
# When updating RUNC_COMMIT, also update runc in vendor.conf accordingly
RUNC_COMMIT=54296cf40ad8143b62dbcaa1d90e520a2136ddfe
CONTAINERD_COMMIT=4ab9917febca54791c5f071a9d1f404867857fcc

#查看runc和containerd的庫路徑
dev@debian:~/repos/docker$ egrep "runc.git|containerd.git" ./hack/dockerfile/install-binaries.sh
        git clone https://github.com/docker/runc.git "$GOPATH/src/github.com/opencontainers/runc"
        git clone https://github.com/docker/containerd.git "$GOPATH/src/github.com/docker/containerd"

根據(jù)上面的結(jié)果,先將runc和containerd克隆下來,然后checkout相應(yīng)的commit id,這樣就可以配合docker的代碼一起看了。這里是上面例子中找到的containerd和runc的信息:

containerd: https://github.com/docker/con... 4ab9917febca54791c5f071a9d1f404867857fcc

runc: https://github.com/docker/run... 54296cf40ad8143b62dbcaa1d90e520a2136ddfe

注意:

可能是為了方便對runc進(jìn)行修改,docker將github.com/opencontainers/runc克隆到了github.com/docker/runc,在docker v17.03里面,runc是從github.com/docker/runc.git拉的代碼,然后放在本地的opencontainers/runc目錄下,假裝是opencontainers的runc,這個(gè)需要留意,別pull了錯(cuò)誤的庫。

上面顯示containerd的地址是https://github.com/docker/con...,這個(gè)沒有關(guān)系,github已經(jīng)將這個(gè)地址重定向到了https://github.com/containerd...

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

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/26901.html

相關(guān)文章

  • 圖表君聊Docker-開篇

    摘要:圖表君聊開篇今天是圖表君聊的第一篇,為什么會有這個(gè)系列呢容器技術(shù)出現(xiàn)已經(jīng)有一段時(shí)間了,之前零零星星的也看過一些文章,圖表君的項(xiàng)目上也在使用。至于,圖表君沒試過,官網(wǎng)有的教程,大家可以參考。上的官網(wǎng),安裝,然后跟著圖表君一起學(xué)習(xí)吧。 圖表君聊Docker-開篇 今天是圖表君聊Docker的第一篇,為什么會有這個(gè)系列呢?容器技術(shù)Docker出現(xiàn)已經(jīng)有一段時(shí)間了,之前零零星星的也看過一些文章...

    z2xy 評論0 收藏0
  • 容器監(jiān)控實(shí)踐—開篇

    摘要:方案匯總一開源方案采集展示報(bào)警二商業(yè)方案三云廠商騰訊云阿里云百度云華為云四主機(jī)監(jiān)控五日志監(jiān)控六服務(wù)監(jiān)控七存儲后端腦圖本文為容器監(jiān)控實(shí)踐系列文章,完整內(nèi)容見 概述 隨著越來越多的線上服務(wù)docker化,對容器的監(jiān)控、報(bào)警變得越來越重要,容器監(jiān)控有多種形態(tài),有些是開源的(如promethues),而另一些則是商業(yè)性質(zhì)的(如Weave),有些是集成在云廠商一鍵部署的(Rancher、谷歌云)...

    Zack 評論0 收藏0
  • 容器監(jiān)控實(shí)踐—開篇

    摘要:方案匯總一開源方案采集展示報(bào)警二商業(yè)方案三云廠商騰訊云阿里云百度云華為云四主機(jī)監(jiān)控五日志監(jiān)控六服務(wù)監(jiān)控七存儲后端腦圖本文為容器監(jiān)控實(shí)踐系列文章,完整內(nèi)容見 概述 隨著越來越多的線上服務(wù)docker化,對容器的監(jiān)控、報(bào)警變得越來越重要,容器監(jiān)控有多種形態(tài),有些是開源的(如promethues),而另一些則是商業(yè)性質(zhì)的(如Weave),有些是集成在云廠商一鍵部署的(Rancher、谷歌云)...

    hellowoody 評論0 收藏0
  • PHP 開發(fā)者的 Docker 之旅

    摘要:用作為我們開發(fā)大禮包開篇是帶著一些朝圣的心情的。最著名的版本發(fā)布于年月日,距今正好第十一個(gè)年頭。在年全面采用運(yùn)行,間接拉升了生態(tài)的逼格,激發(fā)了整個(gè)群體的活力。但這也間接養(yǎng)成了開發(fā)重功能輕工程的通病,加上部署的隨意性,上規(guī)模后運(yùn)維虐成狗。 showImg(http://7xi8kv.com5.z0.glb.qiniucdn.com/php.jpg); 用 PHP 作為我們「Docker...

    xeblog 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<