溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux系統(tǒng)怎么進(jìn)入docker容器

發(fā)布時(shí)間:2022-01-26 17:09:03 來(lái)源:億速云 閱讀:4720 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

小編今天帶大家了解Linux系統(tǒng)怎么進(jìn)入docker容器,文中知識(shí)點(diǎn)介紹的非常詳細(xì)。覺(jué)得有幫助的朋友可以跟著小編一起瀏覽文章的內(nèi)容,希望能夠幫助更多想解決這個(gè)問(wèn)題的朋友找到問(wèn)題的答案,下面跟著小編一起深入學(xué)習(xí)“Linux系統(tǒng)怎么進(jìn)入docker容器”的知識(shí)吧。

當(dāng)我們安裝并且運(yùn)行docker之后就要面臨一個(gè)問(wèn)題就是如何進(jìn)入 docker內(nèi)部?進(jìn)入docker的方法有許多可以使用ssh登錄、第三方工具(nsenter、nsinit)、docker提供的工具(attach、exec) 等。

登錄容器的方式            ssh登錄                                第三方工具(nsenter、nsinit)                                                      docker提供的工具(attach、exec)                            
優(yōu)點(diǎn)          符合平時(shí)登錄服務(wù)器習(xí)慣,不用額外學(xué)習(xí)使用方便快捷使用方便快捷              
缺點(diǎn)秘鑰管理ssh升級(jí)監(jiān)控需要學(xué)習(xí)第三方工具使用規(guī)則docker宿主機(jī)root權(quán)限使用attach登錄容器,exit退出容器docker宿主機(jī)root權(quán)限同屏
適用范圍            適用docker宿主機(jī)登錄至容器內(nèi)部遠(yuǎn)程登錄該容器適用docker宿主機(jī)登錄至容器內(nèi)部適用docker宿主機(jī)登錄至容器內(nèi)部
  • SSH使用方法:ssh用戶@IP地址 -p 端口一般ssh登錄走22端口,但是在docker中bridge網(wǎng)絡(luò)模式使用NAT做端口映射,端口需要特殊標(biāo)注適用范圍:docker宿主機(jī)內(nèi)部登錄容器,外部終端直接登錄容器 優(yōu)點(diǎn):符合管理員、開(kāi)發(fā)者登錄服務(wù)器的習(xí)慣,不需要進(jìn)行額外的學(xué)習(xí) 缺點(diǎn):1.秘鑰管理

    如果將秘鑰寫(xiě)到鏡像中,當(dāng)需要更新秘鑰時(shí)需要重新制作鏡像,部署,重啟容器,雖然這個(gè)步驟繁瑣,但是個(gè)人認(rèn)為還是安全的。如果將秘鑰寫(xiě)到卷中,首先要保證該容器沒(méi)有這個(gè)卷的寫(xiě)權(quán)限,否則存在秘鑰被篡改的風(fēng)險(xiǎn)。

    2.ssh 升級(jí)或打補(bǔ)丁

    ssh 有漏洞或者版本升級(jí)時(shí),需要對(duì)每一個(gè)容器進(jìn)行打補(bǔ)丁或者升級(jí)操作

  • docker attach

     使用方法 :docker attach [container name]

     適用范圍: docker 宿主機(jī)內(nèi)部登錄容器

     優(yōu)點(diǎn): 快捷方便

    缺點(diǎn) 1.exit 后直接退出該container

          \2. 多屏同步 這相當(dāng)于同一時(shí)間最多只能有一個(gè)終端連接容器

Linux系統(tǒng)怎么進(jìn)入docker容器

Linux系統(tǒng)怎么進(jìn)入docker容器

  • docker exec使用方法:docker exec -it [container name] [command]適用范圍:docker宿主機(jī)內(nèi)部登錄容器優(yōu)點(diǎn):快捷方便缺點(diǎn):外部終端無(wú)法使用這種方法登錄容器使用參數(shù)介紹-i, –interactive        Keep STDIN open even if not attached ————交互 -t, –tty            Allocate a pseudo-TTY————分配偽終端一般情況會(huì)使用-it這個(gè)組合命令,如果單用也只能單獨(dú)使用-i命令 -i 參數(shù)不會(huì)產(chǎn)生偽終端,但是會(huì)有正確的返回

Linux系統(tǒng)怎么進(jìn)入docker容器

     使用-it時(shí),則和我們平常操作console界面類似。而且也不會(huì)像attach方式因?yàn)橥顺?,?dǎo)致整個(gè)容器退出。這種方式可以替代ssh或者nsenter、nsinit方式,在容器內(nèi)進(jìn)行操作。

  • nsenter工具

     nsenter工具的安裝:

     wget https://www.kernel.org/pub/linux/utils/util-linux/v2.28/ util-linux-2.28.tar.gz

     tar -xzvf util-linux-2.28.tar.gz    

     cd util-linux-2.28

    ./configure –without-ncurses

    make nsenter

    cp nsenter /usr/local/bin

    安裝完成后,使用nsenter —help 命令查看,可以看到使用方法及參數(shù)則證明安裝成功。

Linux系統(tǒng)怎么進(jìn)入docker容器

      使用nsenter 命令登錄docker 容器

Linux系統(tǒng)怎么進(jìn)入docker容器

      在使用nsenter登錄docker 容器時(shí),一般使用前6個(gè)參數(shù)(我看別人都這么寫(xiě)的,想了想原因,可能使用前6個(gè)參數(shù)就可以涵蓋網(wǎng)絡(luò),磁盤(pán),進(jìn)程管理操作系統(tǒng)基本的信息,我嘗試只使用其中一個(gè)或幾個(gè)參數(shù)登錄容器,成功了但是操作系統(tǒng)功能使用上受限制,比如無(wú)法使用網(wǎng)絡(luò)配置功能等)。

感謝大家的閱讀,以上就是“Linux系統(tǒng)怎么進(jìn)入docker容器”的全部?jī)?nèi)容了,學(xué)會(huì)的朋友趕緊操作起來(lái)吧。相信億速云小編一定會(huì)給大家?guī)?lái)更優(yōu)質(zhì)的文章。謝謝大家對(duì)億速云網(wǎng)站的支持!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI