簡體   English   中英

連接到 docker 容器作為工作區

[英]connecting to a docker container as a workspace

我目前使用一個 vagrant box 作為我的 DevOps/雲開發工作區。

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 容器以減輕我的工作區的啟動和要求。 我該怎么做?

要能夠在Windows上通過MobaXterm啟動Shell,請執行以下操作:

  1. 單擊“ +”選項卡從MobaXterm創建一個新的外殼 創建一個外殼

  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外殼,powershell或類似外殼。

@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%。

問候。 德洛科

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM