docker入門—1. Docker概念和安裝

Docker

  • Docker是一種Linux容器的標(biāo)準(zhǔn)
  • 容器是一套獨立的運(yùn)行環(huán)境灰伟,運(yùn)行在Linux內(nèi)核上
  • 容器擁有自己的進(jìn)程回怜、網(wǎng)絡(luò)等
  • Docker Image: 用來運(yùn)行Docker容器實例
  • Docker Engine: 創(chuàng)建并運(yùn)行Docker容器
  • Docker Hub:類似Maven Central活喊,包含很多Docker Image的公共倉庫

Docker的結(jié)構(gòu)

docker結(jié)構(gòu)

Docker重要概念

docker image
  • 一個docker image定義了一個docker容器
  • docker image一旦生成坊秸,后續(xù)無法修改
  • docker image有多個layer,每個layer都有唯一的ID(SHA 256哈希值), layer中包含很多文件和目錄
  • 命令docker image inspect mongo可以查看mongo image的信息:
[
    {
        "Id": "sha256:0da05d84b1fe3b5620c55bf254446fc052e28ccd53d320954fbc593ab701204b",
        "RepoTags": [
            "mongo:latest"
        ],
        
        ...省略...
        
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:0de2edf7bff41238438e25b6f2de055b97c7fb6fe095cd560c2095b8dd70fc99",
                "sha256:b2fd8b4c3da7e720f748179985ff20f537d504a9f4b0df09ac7611b390addab8",
                "sha256:f67191ae09b8f583063c9f2e369ce3743a4f4eca91e2f7c4c3e4f5a7fba6b24a",
                "sha256:68dda0c9a8cd82911fa164ad1461ded7901784ddc4f221c3bd0ae6acbea7ad36",
                "sha256:814a643e08c0a951be03006fe39a21b468e8f915ae8ced088a52db36b4e00835",
                "sha256:73e6da9f69958270be26449dbb7a4b0b5b56bc768c206acd88d5851525c74dda",
                "sha256:ec45b2889a8c1079fac58adb49de0caae8408529734a89ee0bebb863bf7da2d1",
                "sha256:d7c2ee3984631b8c29c5939d306223d73c41835d2e76f07f225e9c94a6578d55",
                "sha256:77f36e6eab4ca8a7be61111a4afa5250d1d2e60890662a2b8ff9ad6238c00d6a",
                "sha256:b4e2a791e14a00a16f749e2e83757687af1ff78105cf81562d0fd3efd3325f82",
                "sha256:42fa207461d1400fa8e81d2777a520eb353b2f8135ed95a35ff660677b272bb8",
                "sha256:9a76683c1df7bd0b42a2d5f472fa73428a7fd3a99946e7f3e701a271b210b6b3",
                "sha256:2a0f9935357bf0039205a33a8e2a5a28037a732d2b09fb45bf02bc802a2283bb"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]

上面的JSON RootFS信息可以看到有很多l(xiāng)ayer仅父。

docker file

這里是一個docker file的例子

FROM debian:jessie-slim

...省略...

RUN set -eux; \
    apt-get update; \
    apt-get install -y --no-install-recommends \
        ca-certificates \
        jq \
        numactl \
    ; \
    if ! command -v ps > /dev/null; then \
        apt-get install -y --no-install-recommends procps; \
    fi; \
    rm -rf /var/lib/apt/lists/*

...省略...

EXPOSE 27017
CMD ["mongod"]
  • docker file中的每一個命令都會創(chuàng)建一個layer
  • 第一行FROM debian:jessie-slim表示該docker file繼承自debian
  • EXPOSE 27017表示mongo docker的暴露的端口是27017
  • docker image可以繼承赠群,因此多個docker image會共享layer(而且layer的SHA值相同)羊始,如:
多個docker image共享layer

安裝Docker for Mac

  1. 官網(wǎng)下載
  2. 安裝好Docker后,打開Terminal并運(yùn)行命令:
docker run hello-world

看到如下圖表示Docker已經(jīng)安裝成功查描。

驗證docker安裝成功

使用Kitematic

Kitematic是Docker的GUI程序突委,可以在Docker hub中拉取并安裝Docker image柏卤。

可以看到hello-world-nginx已經(jīng)處于running狀態(tài)。

Kitematic運(yùn)行nginx

設(shè)置頁面可以看到Docker的80端口被映射到主機(jī)的32768端口匀油,因此在瀏覽器中打開地址http://localhost:32768/就能看到nginx container正在運(yùn)行

nginx container設(shè)置
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缘缚,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子敌蚜,更是在濱河造成了極大的恐慌桥滨,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弛车,死亡現(xiàn)場離奇詭異齐媒,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)纷跛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進(jìn)店門喻括,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人贫奠,你說我怎么就攤上這事唬血。” “怎么了唤崭?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵拷恨,是天一觀的道長。 經(jīng)常有香客問我浩姥,道長,這世上最難降的妖魔是什么状您? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任勒叠,我火速辦了婚禮,結(jié)果婚禮上膏孟,老公的妹妹穿的比我還像新娘眯分。我一直安慰自己,他們只是感情好柒桑,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布弊决。 她就那樣靜靜地躺著,像睡著了一般魁淳。 火紅的嫁衣襯著肌膚如雪飘诗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天界逛,我揣著相機(jī)與錄音昆稿,去河邊找鬼。 笑死息拜,一個胖子當(dāng)著我的面吹牛溉潭,可吹牛的內(nèi)容都是我干的净响。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼喳瓣,長吁一口氣:“原來是場噩夢啊……” “哼馋贤!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起畏陕,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤配乓,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蹭秋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體扰付,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年仁讨,在試婚紗的時候發(fā)現(xiàn)自己被綠了羽莺。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡洞豁,死狀恐怖盐固,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情丈挟,我是刑警寧澤刁卜,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站曙咽,受9級特大地震影響蛔趴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜例朱,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一孝情、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧洒嗤,春花似錦箫荡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至间唉,卻和暖如春绞灼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背呈野。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工镀赌, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人际跪。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓商佛,卻偏偏與公主長得像喉钢,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子良姆,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容