Docker容器進(jìn)入的4種方式

摘要:?在使用Docker創(chuàng)建了容器之后,大家比較關(guān)心的就是如何進(jìn)入該容器了必盖,其實(shí)進(jìn)入Docker容器有好幾多種方式,這里我們就講一下常用的幾種進(jìn)入Docker容器的方法。 進(jìn)入Docker容器比較常見(jiàn)的幾種做法如下: 使用docker attach 使用SSH 使用nsenter 使用exec 一丽猬、使用docker attach進(jìn)入Docker容器   Docker提供了attach命令來(lái)進(jìn)入Docker容器宿饱。

在使用Docker創(chuàng)建了容器之后,大家比較關(guān)心的就是如何進(jìn)入該容器了脚祟,其實(shí)進(jìn)入Docker容器有好幾多種方式谬以,這里我們就講一下常用的幾種進(jìn)入Docker容器的方法。

進(jìn)入Docker容器比較常見(jiàn)的幾種做法如下:

使用docker attach

使用SSH

使用nsenter

使用exec

一由桌、使用docker attach進(jìn)入Docker容器

  Docker提供了attach命令來(lái)進(jìn)入Docker容器为黎。

  接下來(lái)我們創(chuàng)建一個(gè)守護(hù)態(tài)的Docker容器,然后使用docker attach命令進(jìn)入該容器沥寥。

$?sudo?docker?run?-itd?ubuntu:14.04?/bin/bash??

  然后我們使用docker ps查看到該容器信息碍舍,接下來(lái)就使用docker attach進(jìn)入該容器

$?sudo?docker?attach?44fc0f0582d9??

  可以看到我們已經(jīng)進(jìn)入到該容器中了。


  但在邑雅,使用該命令有一個(gè)問(wèn)題片橡。當(dāng)多個(gè)窗口同時(shí)使用該命令進(jìn)入該容器時(shí),所有的窗口都會(huì)同步顯示淮野。如果有一個(gè)窗口阻塞了捧书,那么其他窗口也無(wú)法再進(jìn)行操作。

因?yàn)檫@個(gè)原因骤星,所以docker attach命令不太適合于生產(chǎn)環(huán)境经瓷,平時(shí)自己開(kāi)發(fā)應(yīng)用時(shí)可以使用該命令。

二洞难、使用SSH進(jìn)入Docker容器

  在生產(chǎn)環(huán)境中排除了使用docker attach命令進(jìn)入容器之后舆吮,相信大家第一個(gè)想到的就是ssh。在鏡像(或容器)中安裝SSH Server队贱,這樣就能保證多人進(jìn)入

容器且相互之間不受干擾了色冀,相信大家在當(dāng)前的生產(chǎn)環(huán)境中(沒(méi)有使用Docker的情況)也是這樣做的。但是使用了Docker容器之后不建議使用ssh進(jìn)入到Docker容

器內(nèi)柱嫌。關(guān)于為什么不建議使用锋恬,請(qǐng)參考如下文章:

為什么不需要在 Docker 容器中運(yùn)行 sshd

三、使用nsenter進(jìn)入Docker容器

  在上面兩種方式都不適合的情況下编丘,還有一種比較方便的方法与学,即使用nsenter進(jìn)入Docker容器。關(guān)于什么是nsenter請(qǐng)參考如下文章:

https://github.com/jpetazzo/nsenter

在了解了什么是nsenter之后嘉抓,系統(tǒng)默認(rèn)將我們需要的nsenter安裝到主機(jī)中

如果沒(méi)有安裝的話索守,按下面步驟安裝即可(注意是主機(jī)而非容器或鏡像)

具體的安裝命令如下:

$?wget?https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz??

$?tar?-xzvf?util-linux-2.24.tar.gz??

$?cd?util-linux-2.24/??

$?./configure?--without-ncurses??

$?make?nsenter??

$?sudo?cp?nsenter?/usr/local/bin??

安裝好nsenter之后可以查看一下該命令的使用。

  nsenter可以訪問(wèn)另一個(gè)進(jìn)程的名稱空間抑片。所以為了連接到某個(gè)容器我們還需要獲取該容器的第一個(gè)進(jìn)程的PID蕾盯。可以使用docker inspect命令來(lái)拿到該P(yáng)ID。

docker inspect命令使用如下:

$?sudo?docker?inspect?--help ??

inspect命令可以分層級(jí)顯示一個(gè)鏡像或容器的信息级遭。比如我們當(dāng)前有一個(gè)正在運(yùn)行的容器


可以使用docker inspect來(lái)查看該容器的詳細(xì)信息望拖。

$?sudo?docker?inspect?44fc0f0582d9??


由其該信息非常多,此處只截取了其中一部分進(jìn)行展示挫鸽。如果要顯示該容器第一個(gè)進(jìn)行的PID可以使用如下方式

$?sudo?docker?inspect?-f?``.`State`.`Pid`?44fc0f0582d9??


在拿到該進(jìn)程PID之后我們就可以使用nsenter命令訪問(wèn)該容器了说敏。

$?sudo?nsenter?--target?3326?--mount?--uts?--ipc?--net?--pid??

$?sudo?nsenter?--target?3326?--mount?--uts?--ipc?--net?--pid??

其中的3326即剛才拿到的進(jìn)程的PID

當(dāng)然,如果你認(rèn)為每次都輸入那么多參數(shù)太麻煩的話丢郊,網(wǎng)上也有許多做好的腳本供大家使用盔沫。

地址如下:

http://yeasy.gitbooks.io/docker_practice/content/container/enter.html

http://www.tuicool.com/articles/eYnUBrR


四、使用docker exec進(jìn)入Docker容器

  除了上面幾種做法之外枫匾,docker在1.3.X版本之后還提供了一個(gè)新的命令exec用于進(jìn)入容器架诞,這種方式相對(duì)更簡(jiǎn)單一些,下面我們來(lái)看一下該命令的使用:

$?sudo?docker?exec?--help ??


接下來(lái)我們使用該命令進(jìn)入一個(gè)已經(jīng)在運(yùn)行的容器

$?sudo?docker?ps??

$?sudo?docker?exec?-it?775c7c9ee1e1?/bin/bash ?

本文轉(zhuǎn)自 Mr_sheng 51CTO博客干茉,原文鏈接:http://blog.51cto.com/sf1314/1969635

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)谴忧,版權(quán)歸作者所有,本社區(qū)不擁有所有權(quán)角虫,也不承擔(dān)相關(guān)法律責(zé)任沾谓。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,歡迎發(fā)送郵件至:yqgroup@service.aliyun.com?進(jìn)行舉報(bào)戳鹅,并提供相關(guān)證據(jù)均驶,一經(jīng)查實(shí),本社區(qū)將立刻刪除涉嫌侵權(quán)內(nèi)容枫虏。

用云棲社區(qū)APP妇穴,舒服~

原文鏈接

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末憔披,一起剝皮案震驚了整個(gè)濱河市糙及,隨后出現(xiàn)的幾起案子腐魂,更是在濱河造成了極大的恐慌蛾娶,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件礼饱,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)回俐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)稀并,“玉大人仅颇,你說(shuō)我怎么就攤上這事〉饩伲” “怎么了忘瓦?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)引颈。 經(jīng)常有香客問(wèn)我耕皮,道長(zhǎng)境蜕,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任凌停,我火速辦了婚禮粱年,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘罚拟。我一直安慰自己台诗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布赐俗。 她就那樣靜靜地躺著拉队,像睡著了一般。 火紅的嫁衣襯著肌膚如雪阻逮。 梳的紋絲不亂的頭發(fā)上粱快,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音夺鲜,去河邊找鬼皆尔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛币励,可吹牛的內(nèi)容都是我干的慷蠕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼食呻,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼流炕!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起仅胞,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤每辟,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后干旧,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體渠欺,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年椎眯,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了挠将。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡编整,死狀恐怖舔稀,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情掌测,我是刑警寧澤内贮,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響夜郁,放射性物質(zhì)發(fā)生泄漏什燕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一拂酣、第九天 我趴在偏房一處隱蔽的房頂上張望秋冰。 院中可真熱鬧,春花似錦婶熬、人聲如沸剑勾。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)虽另。三九已至,卻和暖如春饺谬,著一層夾襖步出監(jiān)牢的瞬間捂刺,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工募寨, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留族展,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓拔鹰,卻偏偏與公主長(zhǎng)得像仪缸,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子列肢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

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