「快學(xué)Docker」Docker簡介、安裝和Hello World實(shí)現(xiàn)

前言

Docker已經(jīng)成為了一門炙手可熱的技術(shù),每個程序員(特別是后端程序員)都應(yīng)該學(xué)習(xí)下Docker這門技術(shù)比吭。

Docker是什么

來自官網(wǎng)的定義:Docker是以Docker容器為資源分割和調(diào)度的基本單位刺覆,封裝了整個軟件運(yùn)行時環(huán)境严肪,為開發(fā)者和系統(tǒng)管理員設(shè)計(jì)的,用于構(gòu)建谦屑、發(fā)布和運(yùn)行應(yīng)用的平臺驳糯。Docker是開源的,其基于Go語言開發(fā)氢橙。Docker通過操作系統(tǒng)內(nèi)核技術(shù)(namespace酝枢、cgroups等內(nèi)核、資源隔離技術(shù))為容器提供資源隔離和安全保障悍手。

Docker可以做什么

1帘睦、消除線上、線下的環(huán)境差異坦康,保證了應(yīng)用生命周期的環(huán)境一致性和標(biāo)準(zhǔn)化

2竣付、版本化控制≈颓罚可以像Git一樣進(jìn)行版本控制古胆,版本回滾等。

3筛璧、高資源利用率和資源隔離逸绎⊙希可以精確地為應(yīng)用分配CPU、內(nèi)存等資源桶良,保證了應(yīng)用間互不影響座舍。

4、跨平臺性陨帆。Docker將應(yīng)用和其依賴的運(yùn)行時環(huán)境打包成鏡像曲秉,實(shí)現(xiàn)了“構(gòu)建一次,到處運(yùn)行”的理念疲牵。

5承二、等等等等~~~

Docker安裝

Docker命令的執(zhí)行一般都需要root權(quán)限,為了方便纲爸,所以下面的安裝方式都是在root用戶下進(jìn)行的亥鸠。非root用戶需要在命令前添加sudo。

腳本安裝方式(通用)

這種方式是通過下載腳本來安裝的识啦,是比較通用的一種安裝方式负蚊。

 curl -fsSL http://get.docker.com/ | sh

執(zhí)行結(jié)果如下:

image

警告可以忽略它。一切正常的話颓哮,就可以啟動我們的Docker了家妆。

啟動docker:

systemctl start docker
或者
service docker start

centos系統(tǒng)安裝Docker-ce

移除老版本

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安裝docker ce

$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io

詳細(xì)的安裝手冊,大家可以參考官方文檔冕茅。官方文檔做了比較詳細(xì)的說明伤极。

非Linux系統(tǒng)

我推薦使用Linux系統(tǒng)來安裝docker。如果想在windows姨伤、Mac上安裝docker哨坪,可以使用docker for windows或者Desktop for Mac工具類解決吧。這里就不多說了乍楚。

docker-ce当编,docker-ee和docker-io的區(qū)別?

較舊版本的Docker稱為docker或docker-engine或docker.io炊豪。新的docker分為兩個版本凌箕,社區(qū)版(ce)和企業(yè)版(ee)。

所以词渤,盡量不要通過yum -y install docker-io的方式來安裝docker,因?yàn)檫@樣安裝到的是老版本的docker了串绩。

Hello World實(shí)現(xiàn)

編程界的慣例缺虐,先來個Hello World體驗(yàn)下docker吧

搜索hello-world鏡像

 docker search hello
image

可以看到有一個官方的hello world鏡像。

獲取hello-world鏡像

docker pull hello-world

輸出結(jié)果:

Using default tag: latest
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:41a65640635299bab090f783209c1e3a3f11934cf7756b09cb2f1e02147c6ed8
Status: Downloaded newer image for hello-world:latest

啟動hello-world

docker run -it hello-world

輸出結(jié)果:

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/


看第一行礁凡,輸出了Hello from Docker!高氮。這就是docker官方為我們準(zhǔn)備的hello world實(shí)現(xiàn)了慧妄,大家也可以自己去體驗(yàn)一下。

總結(jié)

本文簡單地介紹了Docker剪芍,并且介紹了Docker的安裝方法和演示了docker官方提供的hello world實(shí)現(xiàn)塞淹。這里用到了一些docker命令,如search罪裹,pull饱普,run,可以先不用理會它状共,后面再具體分析套耕。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市峡继,隨后出現(xiàn)的幾起案子冯袍,更是在濱河造成了極大的恐慌,老刑警劉巖碾牌,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件康愤,死亡現(xiàn)場離奇詭異,居然都是意外死亡舶吗,警方通過查閱死者的電腦和手機(jī)翘瓮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來裤翩,“玉大人资盅,你說我怎么就攤上這事∮辉” “怎么了呵扛?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長筐带。 經(jīng)常有香客問我今穿,道長,這世上最難降的妖魔是什么伦籍? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任蓝晒,我火速辦了婚禮,結(jié)果婚禮上帖鸦,老公的妹妹穿的比我還像新娘芝薇。我一直安慰自己,他們只是感情好作儿,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布洛二。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪晾嘶。 梳的紋絲不亂的頭發(fā)上妓雾,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天,我揣著相機(jī)與錄音垒迂,去河邊找鬼械姻。 笑死,一個胖子當(dāng)著我的面吹牛机断,可吹牛的內(nèi)容都是我干的楷拳。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼毫缆,長吁一口氣:“原來是場噩夢啊……” “哼唯竹!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起苦丁,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤浸颓,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后旺拉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體产上,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年蛾狗,在試婚紗的時候發(fā)現(xiàn)自己被綠了晋涣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡沉桌,死狀恐怖谢鹊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情留凭,我是刑警寧澤佃扼,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站蔼夜,受9級特大地震影響兼耀,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜求冷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一瘤运、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧匠题,春花似錦拯坟、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽傲绣。三九已至掠哥,卻和暖如春巩踏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背续搀。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工塞琼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人禁舷。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓彪杉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親牵咙。 傳聞我的和親對象是個殘疾皇子派近,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評論 2 345

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