0

我目前使用 vagrant box 作为 devops/cloud 开发的工作空间。

vagrant ssh 在 Windows 上的 MobaXterm 中不起作用

我看到了 vagrant 的这个命令: command /drives/c/HashiCorp/Vagrant/bin/vagrant ssh-config > vagrant-ssh-config && ssh -A -F vagrant-ssh-config default

在设置的高级选项卡中。

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

4

2 回答 2

1

为了能够在 Windows 上通过 MobaXterm 启动 shell:

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

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

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

或与:

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

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

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

你现在在你的 docker 容器的 bash 环境中,你可以输入ls例如:

带有 ls 示例的 Docker exec 命令

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

使用 Windows 10、MobaXterm v10.9、docker v18.09.2 测试。

注意:经过一段时间的测试,MobaXterm 并没有很好地支持 docker 交互式控制台(bash 支持)。最好使用 cmd shell、powershell 或类似的。

于 2019-04-02T11:07:08.607 回答
0

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

我在另一个对我有用的问题中找到了一个简单的解决方案,也许对其他用户也有用。只需在 docker.exe 之前添加 winpty

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

到目前为止,工作100%。

问候。德洛科

于 2021-08-03T15:03:07.033 回答