作为工作空间连接到Docker容器

时间:2019-03-28 17:33:33

标签: docker workspace mobaxterm

我目前使用一个无聊的盒子作为我的devops / cloud开发工作区。

vagrant ssh not working in MobaXterm on Windows

我看到了这个无业游民的命令: 命令/ drives / c / HashiCorp / Vagrant / bin / vagrant ssh-config> vagrant-ssh-config && ssh -A -F vagrant-ssh-config默认值

在设置的高级标签中。

我想使用mobaxterm连接docker容器以减轻工作空间的开始和要求。我该怎么做?

2 个答案:

答案 0 :(得分:1)

要能够在Windows上通过MobaXterm启动外壳程序,

  1. 从MobaXterm创建一个新外壳,单击“ +”选项卡 Create a shell

  2. 转到您的docker安装目录:

cd "C:\Program Files\Docker\Docker\Resources\bin"

或:

cd /drives/c/Program Files/Docker/Docker/Resources/bin

  1. 仅使用-i交互式选项执行docker exec命令:

./docker.exe exec -i your_docker_container /bin/bash

您现在处于Docker容器的bash环境中,您可以输入ls例如:

Docker exec command with ls example

如果需要连接到远程docker实例,请调整docker命令以包括远程主机(-H

在Windows 10,MobaXterm v10.9,docker v18.09.2中进行了测试。

注意:经过一段时间的测试,MobaXterm无法为Docker交互式控制台提供良好的支持(bash支持)。最好使用cmd外壳,powershell或类似的外壳。

答案 1 :(得分:0)

@BlouBlou,非常感谢您的回答 只是添加对我有用的信息。 当我尝试使用时: “./docker.exe exec -i your_docker_container /bin/bash” 我连接到终端,但屏幕空白。 尝试使用“-it”,我收到了以下消息: “输入设备不是 TTY。如果您使用的是 mintty,请尝试在命令前加上 'winpty'”

I've found a simple solution in another another question 对我有用,也可能对其他用户有用.. 在 docker.exe 前加上 winpty

cd "C:\Program Files\Docker\Docker\Resources\bin"; winpty ./docker.exe exec -ti yourcontainer /bin/bash

到目前为止 100% 工作。

问候。 德洛科