发布于 2015-01-08 03:06:09
Docker已经在Docker 1.3.0中添加了docker exec
命令。您可以通过以下方式连接到正在运行的容器:
docker exec -it <container id> /bin/bash
它将连接到正在运行的容器上的bash提示。
发布于 2014-10-02 04:04:33
如果你只是想进入运行的容器,你可以考虑使用nsenter
。下面是一个简单的bash脚本(suggested by Chris Jones),您可以使用它进入docker容器。将其另存为docker-enter和chmod +x
,保存在$PATH
中的某个位置
#!/bin/bash
set-e
# Check for nsenter. If not found, install it
boot2docker ssh '[ -f /var/lib/boot2docker/nsenter ] || docker run --rm -v /var/lib/boot2docker/:/target jpetazzo/nsenter'
# Use bash if no command is specified
args=$@
if[[ $# = 1 ]]; then
args+=(/bin/bash)
fi
boot2docker ssh -t sudo /var/lib/boot2docker/docker-enter "${args[@]}"
然后您可以运行docker-enter 89af3d
(或您想要输入的任何配置)
发布于 2014-10-19 09:33:18
Michael答案的一个略微修改的变体,只需要您想要输入的容器被命名(APPNAME):
boot2docker ssh '[ -f /var/lib/boot2docker/nsenter ] || docker run --rm -v /var/lib/boot2docker/:/target jpetazzo/nsenter'
boot2docker ssh -t sudo /var/lib/boot2docker/docker-enter $(docker ps | grep $APPNAME | awk '{ print $1 }')
https://stackoverflow.com/questions/23014684
复制相似问题