Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash Docker-ssh(按容器名称)_Bash_Docker_Ssh_Docker Compose - Fatal编程技术网

Bash Docker-ssh(按容器名称)

Bash Docker-ssh(按容器名称),bash,docker,ssh,docker-compose,Bash,Docker,Ssh,Docker Compose,我想通过容器名轻松地ssh到docker容器。 现在,我需要调用ssh到容器: docker ps 返回: CONTAINER ID IMAGE <container_id> myContainer 容器ID图像 霉菌容器 并复制容器_ID以执行命令: docker exec -ti <container_id> /bin/bash/ docker exec-ti/bin/bash/ 我有很多容器,通过映像名ssh将更容易。 不编写自

我想通过容器名轻松地ssh到docker容器。 现在,我需要调用ssh到容器:

docker ps
返回:

CONTAINER ID        IMAGE
<container_id>        myContainer
容器ID图像
霉菌容器
并复制容器_ID以执行命令:

docker exec -ti <container_id> /bin/bash/
docker exec-ti/bin/bash/
我有很多容器,通过映像名ssh将更容易。
不编写自定义bash脚本就可以吗?

一般来说,只要不在每个容器中安装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
此外,一般来说,您可能会有多个容器为同一个映像运行,因此您想要实现的(按映像名称输入容器)不是很安全