我希望通过容器名称轻松ssh到docker容器。 现在要ssh到容器我需要调用:
docker ps
返回:
CONTAINER ID IMAGE
<container_id> myContainer
并复制CONTAINER_ID以执行命令:
docker exec -ti <container_id> /bin/bash/
我有很多容器,用IMAGE名称来ssh会容易得多。 是否可以不写自定义bash脚本?
答案 0 :(得分:1)
通常,只要您不在每个容器内安装SSH客户端,就不可能在容器内“ssh”。
请注意,您可以使用container name
代替container id
执行命令(在您的情况下为/ bin / bash)到正在运行的容器中。
例如,给定一个这样的容器:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5b3068b4e51c registry_registry "/entrypoint.sh /e..." 4 months ago Up 2 hours 0.0.0.0:5000->5000/tcp registry_registry_1
运行以下2命令会得到相同的结果:
docker exec -ti 5b3068b4e51c /bin/bash
docker exec -ti registry_registry_1 /bin/bash
此外,一般情况下,您可以为同一个图像运行更多的一个容器,因此您想要实现的目标(按图像名称输入容器)并不安全。