2016-08-02 97 views
1

我需要登录到Docker容器内的bash控制台,该容器在远程主机中运行。如何在单个命令中将ssh + bash转换为Docker容器

以下命令的工作:

(local)$ ssh -i myKey [email protected] 
(remote)$ docker exec -it myContainer /bin/bash 

请注意,我用的密码认证与SSH。我的场景涉及更多一点,包括一个脚本以进入单个命令(实际上也会计算出docker容器ID),这足以显示问题。当我尝试在一个命令来运行,我得到以下错误:

(local)$ ssh -i myKey [email protected] "docker exec -it myContainer /bin/bash" 
cannot enable tty mode on non tty input 

我怎样才能运行这个SSH和越过“无法启用TTY”的错误?

回答

3

使用-t选项(两次)与ssh

ssh -tt -i myKey [email protected] docker exec -it myContainer /bin/bash 
+0

纯魔法。它的工作,谢谢 – herchu

1

您可以使用命令(从PC)docker-machine这样,你就能够连接到泊坞窗服务器(如果API暴露)一个管理泊坞窗喜欢你的本地环境(码头工人PS,码头工人跑等等等等) 文档:

https://docs.docker.com/machine/ 
相关问题