是否有任何快捷命令可以连接到docker容器,而无需每次运行docker exec -it 'container_id' bash
?
这是一个较短的命令行快捷方式 to:
- 检查容器是否正在运行
- 如果运行,请使用
docker exec -it <container> bash
命令连接到运行容器:
脚本docker-enter
:
#!/bin/bash
name="${1?needs one argument}"
containerId=$(docker ps | awk -v app="$name:" '$2 ~ app{print $1}')
if [[ -n "$containerId" ]]; then
docker exec -it $containerId bash
else
echo "No docker container with name: $name is running"
fi
然后将其运行为:
docker-enter webapp
我在OS X上使用以下别名:
alias dex='function _dex(){ docker exec -i -t "$(basename $(pwd) | tr -d "[-_]")_$1_1" /bin/bash -c "export TERM=xterm; exec bash" };_dex'
在与我的docker-files同一目录中,我运行" dex php"进入PHP容器。
如果随机ID复杂。使用名称docker run --name test image
启动容器,然后使用其名称docker exec -it test bash
。