docker 怎么進(jìn)入容器?進(jìn)入docker容器比較常見的幾種做法是:使用docker attach;使用ssh;使用nsenter;使用exec。
1.docker attach進(jìn)入docker容器
我們創(chuàng)建一個守護(hù)態(tài)的docker容器,然后使用docker attach命令進(jìn)入該容器。
$ sudo docker run -itd ubuntu:14.04 /bin/bash
然后使用docker ps查看到該容器信息,接下來就使用docker attach進(jìn)入該容器
$ sudo docker attach 44fc0f0582d9
但使用該命令有一個問題。當(dāng)多個窗口同時使用該命令進(jìn)入該容器時,所有的窗口都會同步顯示。如果有一個窗口阻塞了,那么其他窗口也無法再進(jìn)行操作。因?yàn)檫@個原因,所以docker attach命令不太適合于生產(chǎn)環(huán)境,平時自己開發(fā)應(yīng)用時可以使用該命令。
2.使用ssh進(jìn)入docker容器
在鏡像(或容器)中安裝ssh server,能保證多人進(jìn)入容器且相互之間不受干擾,相信大家在當(dāng)前的生產(chǎn)環(huán)境中(沒有使用docker的情況)也是這樣做的。
3.使用nsenter進(jìn)入docker容器
還有一種比較方便的方法,即使用nsenter進(jìn)入docker容器。系統(tǒng)默認(rèn)將我們需要的nsenter安裝到主機(jī)中
如果沒有安裝的話,按下面步驟安裝即可(注意是主機(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/bin4.使用docker exec進(jìn)入docker容器
docker在1.3.x版本之后還提供了一個新的命令exec用于進(jìn)入容器,這種方式相對更簡單一些。
$ sudo docker exec –help
接下來我們使用該命令進(jìn)入一個已經(jīng)在運(yùn)行的容器
$ sudo docker ps
$ sudo docker exec -it 775c7c9ee1e1 /bin/bash西部數(shù)碼的容器云是通過docker技術(shù),在集群服務(wù)器上部署容器服務(wù)實(shí)現(xiàn),安全可靠,擁有上萬linux鏡像,功能強(qiáng)大、輕量靈活,可輕松作集群服務(wù),自由輕松搭建私有網(wǎng)絡(luò)。
高性價比的容器云產(chǎn)品鏈接 https://www.west.cn/paas/container/