首页 > 代码库 > 不通过SSH接入Docker
不通过SSH接入Docker
翻译自:http://www.sebastien-han.fr/blog/2014/01/27/access-a-container-without-ssh/
先运行一个简单的memcache容器:
1 2 3 4 5 6 | $sudo docker run-d-p11211 bacongobbler/memcachedmemcached /usr/bin/memcached-m64 -p11211 -umemcache -l0.0.0.0 $sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0a9856723f90 192.168.0.127:5042/memcached:latest memcached/usr/bin/m 2 secondsago Up2 seconds 0.0.0.0:49153->11211/tcp pensive_pasteur |
获得运行在docker中进程的pid:
1 2 3 | root@docker:~# ps faux |grep memcached syslog 29123 0.0 0.0323216 1184? Sl 22:40 0:00 \_memcached /usr/bin/memcached-m64 -p11211 -umemcache -l0.0.0.0 |
安装nsenter命令(util-linux包中),需要2.23release的linux。
1 2 3 4 5 6 7 | $wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.bz2 $ bzip2-d-cutil-linux-2.24.tar.bz2| tarxvf - $cd util-linux-2.24/ $ sudo./configure--without-ncurses $make nsenter $ cpnsenter /usr/local/bin |
然后,我们连接进入docker容器。
1 2 3 4 5 6 7 | $sudo nsenter-m-u-i-n-p-t29123 /bin/sh # ps faux USER PID %CPU%MEM VSZ RSS TTY STATSTART TIME COMMAND root 11 0.0 0.0 4396 608? S 22:41 0:00/bin/sh root 12 0.0 0.0 15272 1100? R+ 22:41 0:00 \_ps faux memcache 1 0.0 0.0323216 1184? Sl 22:40 0:00memcached /usr/bin/memcached-m64 -p11211 -umemcache -l0.0.0.0 |
不通过SSH接入Docker
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。