docker容器詳解-操作系統(tǒng)級(jí)虛擬化技術(shù)


最近接觸了一下docker和措,容器這個(gè)概念一直有聽到過应又,但不知道具體是做什么的问畅,于是就花了點(diǎn)時(shí)間看了一下,發(fā)現(xiàn)這東西還是很實(shí)用的爆存。

可以把docker比喻成是windows的系統(tǒng)ghost蛉顽,只要有了docker,我們可以在liunx系統(tǒng)(目前docker只支持linux)中搭建好項(xiàng)目的開發(fā)環(huán)境先较,然后上傳到類似github的docker hub 上携冤,這樣就可以在生產(chǎn)環(huán)境中直接復(fù)制開發(fā)環(huán)境的鏡像,省去了復(fù)雜的系統(tǒng)環(huán)境配置過程闲勺。這個(gè)相信大家一定都深有體會(huì)曾棕,項(xiàng)目上線前常常為了搭建系統(tǒng)環(huán)境出現(xiàn)各種各樣的錯(cuò)誤而花費(fèi)大量的時(shí)間。

那怎么樣使用docker菜循,我使用了一下之后發(fā)現(xiàn)使用docker是相當(dāng)簡單的翘地,如果你用過github,那么發(fā)現(xiàn)很多操作都是類似的癌幕。

那我們就具體來看一下docker是怎么使用的

首先我們先要在物理機(jī)上或者云服務(wù)器上安裝docker衙耕,通過指令
apt-get install docker
裝完之后可以通過 docker -v 查看docker的版本

然后我們可以新建鏡像或者從docker hub上拉取官方鏡像或者別人自制的鏡像,這就和github中pull一個(gè)項(xiàng)目的操作一樣勺远,這里我們來拉取一個(gè)nodejs的鏡像
拉取鏡像通過docker pull指令


我這里因?yàn)樵瓉硪呀?jīng)拉取過了橙喘,所以顯示鏡像已存在,默認(rèn)沒加版本的時(shí)候胶逢,會(huì)自動(dòng)拉取latest版本的鏡像厅瞎。

接著,我們可以通過docker images指令來查看本地系統(tǒng)里已經(jīng)拉取過的鏡像列表


REPOSITORY - 鏡像名稱
TAG - 鏡像版本號(hào)
IMAGE ID - 鏡像的ID 唯一標(biāo)識(shí)一個(gè)鏡像文件
CREATED - 鏡像創(chuàng)建時(shí)間
VIRTUAL SIZE - 鏡像文件的大小

這里可以看到我的本地有5個(gè)鏡像文件初坠,這時(shí)我們就可以通過docker run指令來運(yùn)行我們需要的docker環(huán)境和簸,我們這里先跑一個(gè)node的鏡像看看
docker的鏡像運(yùn)行有兩種模式,一種是交互式容器某筐,一種是守護(hù)式容器比搭,用過nodejs的forever模塊的話應(yīng)該就會(huì)比較好理解冠跷,交互式就是帶有交互指令界面的南誊,就像我們直接運(yùn)行node app.js,而守護(hù)式的容器則就像forever蜜托,執(zhí)行完之后服務(wù)是在后臺(tái)執(zhí)行的抄囚。
我們先來執(zhí)行一下交互式的容器,通過docker run -it 鏡像名 /bin/bash來執(zhí)行橄务。


這里就可以看到幔托,我開啟了一個(gè)node的容器,當(dāng)我在容器里執(zhí)行指令node -v的時(shí)候,我們就能看到node的版本重挑,這就說明我們現(xiàn)在已經(jīng)在node的容器環(huán)境里了嗓化。
我們可以通過Ctrl+D指令來退出當(dāng)前容器
接下來我們來開啟一個(gè)守護(hù)式容器,通過docker run -d 鏡像名來執(zhí)行谬哀。

這里我們看到因?yàn)闆]有指定redis的版本號(hào)刺覆,所以docker會(huì)默認(rèn)去找本地latest版本的鏡像,如果本地沒有史煎,就會(huì)自動(dòng)從docker hub上拉取谦屑。當(dāng)我們指定了版本號(hào)為2.8.19的redis鏡像之后,因?yàn)楸镜匚抑耙呀?jīng)拉取過該鏡像篇梭,所以會(huì)返回一長串字符串氢橙,這時(shí)就說明該容器已經(jīng)在后臺(tái)跑起來了,我們可以通過docker ps指令來查看我們在運(yùn)行的容器恬偷。

這里可以看到redis鏡像已經(jīng)在后臺(tái)運(yùn)行了,CONTAINER ID是容器對(duì)應(yīng)的ID悍手,之后對(duì)容器的一些操作可以通過容器ID來執(zhí)行。
比如我們想查看鏡像的具體信息袍患,可以通過docker inspect 容器ID來查看谓苟,會(huì)返回一個(gè)json格式的信息

我們也可以通過docker stop指令來停止一個(gè)容器,通過docker rm指令來刪除一個(gè)容器协怒,docker logs指令來顯示容器里的標(biāo)準(zhǔn)輸出內(nèi)容涝焙。

那當(dāng)我們修改了容器里的內(nèi)容之后,如果我們希望將我們的最新的容器可以給別人共享使用孕暇,那么我們可以將容器提交到docker hub上仑撞。
首先我們需要執(zhí)行docker commit指令來提交容器,然后通過docker push指令將本地提交的容器推送到docker hub上妖滔,這個(gè)過程和github的提交過程是一致的隧哮。
docker commit有兩個(gè)參數(shù) -m 版本信息 -a 指定作者


提交成功了之后我們就可以通過docker push指令來把我們的容器提交到docker hub上

這樣就提交成功了,我們可以登錄docker hub看一下座舍,就能看到我剛剛提交的容器鏡像已經(jīng)成功了沮翔,這樣別人就可以在docker hub上共享我們的容器了。

docker hub

當(dāng)然我們也可以通過docker bulid指令來創(chuàng)建一個(gè)空的鏡像曲秉,在這里我就不多介紹了采蚀,包括docker hub還可以和github做關(guān)聯(lián)

最后給大家提供一點(diǎn)docker比較不錯(cuò)的學(xué)習(xí)資料鏈接
Docker 中文指南
http://www.widuu.com/chinese_docker/index.html
Docker Hub
https://hub.docker.com/
GhostCloud - 圖形化Docker管理工具
https://www.ghostcloud.cn/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市承二,隨后出現(xiàn)的幾起案子榆鼠,更是在濱河造成了極大的恐慌,老刑警劉巖亥鸠,帶你破解...
    沈念sama閱讀 206,013評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件妆够,死亡現(xiàn)場離奇詭異识啦,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)神妹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門颓哮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鸵荠,你說我怎么就攤上這事题翻。” “怎么了腰鬼?”我有些...
    開封第一講書人閱讀 152,370評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵嵌赠,是天一觀的道長。 經(jīng)常有香客問我熄赡,道長姜挺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,168評(píng)論 1 278
  • 正文 為了忘掉前任彼硫,我火速辦了婚禮炊豪,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拧篮。我一直安慰自己词渤,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評(píng)論 5 371
  • 文/花漫 我一把揭開白布串绩。 她就那樣靜靜地躺著缺虐,像睡著了一般。 火紅的嫁衣襯著肌膚如雪礁凡。 梳的紋絲不亂的頭發(fā)上高氮,一...
    開封第一講書人閱讀 48,954評(píng)論 1 283
  • 那天,我揣著相機(jī)與錄音顷牌,去河邊找鬼剪芍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛窟蓝,可吹牛的內(nèi)容都是我干的罪裹。 我是一名探鬼主播,決...
    沈念sama閱讀 38,271評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼运挫,長吁一口氣:“原來是場噩夢啊……” “哼状共!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起滑臊,我...
    開封第一講書人閱讀 36,916評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤口芍,失蹤者是張志新(化名)和其女友劉穎箍铲,沒想到半個(gè)月后雇卷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,382評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評(píng)論 2 323
  • 正文 我和宋清朗相戀三年关划,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了小染。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,989評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡贮折,死狀恐怖裤翩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情调榄,我是刑警寧澤踊赠,帶...
    沈念sama閱讀 33,624評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站每庆,受9級(jí)特大地震影響筐带,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜缤灵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評(píng)論 3 307
  • 文/蒙蒙 一伦籍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧腮出,春花似錦帖鸦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至馋劈,卻和暖如春立倍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背侣滩。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評(píng)論 1 260
  • 我被黑心中介騙來泰國打工口注, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人君珠。 一個(gè)月前我還...
    沈念sama閱讀 45,401評(píng)論 2 352
  • 正文 我出身青樓寝志,卻偏偏與公主長得像,于是被迫代替她去往敵國和親策添。 傳聞我的和親對(duì)象是個(gè)殘疾皇子材部,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評(píng)論 2 345

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