2015-10-16 67 views
5

我开始使用Docker Machine,我刚看到有一个scp命令。 文档就像说:码头机可以ssh但不是scp

$ docker-machine ssh dev 'echo A file created remotely! >foo.txt' $ docker-machine scp dev:/home/docker/foo.txt .

我做了同样的通过创建一个文件,然后:

docker-machine scp default:/home/docker/test.txt .

,但我一直面临的一个状态1.

如果我这样做反过来,并上传文件到容器中,我面临与状态1失去连接。命令:

docker-machine scp mongo.tar default:mongo.tar 

请假设我不是ssh和scp的专家。

+0

对于第二测试,你可以尝试并指定一个完整的路径? '默认:/ full/path/to/mongo.tar' – VonC

+0

'docker-machine scp mongo.tar default:/ home/docker/mongo.tar'输出相同的结果(与状态1丢失连接) – buzz2buzz

+1

docker machine日志说? (可能在'.docker \ machine \ machines \ default \ default \ Logs \'中) – VonC

回答

1

如果您从Windows上的Docker Toolbox运行docker-machine,则会有一个自动安装的卷,您可以在其中访问主机文件系统。默认情况下,VM中的挂载点是/ c/Users /。

+0

谢谢,这对于docker-machine 13.0中scp被破坏有很大帮助 –

0

昨天我遇到了这个问题,今天发现了一个解决方法(或解决方案?)。这是本文写作时特定于OS X Sierra和最新的Docker和VirtualBox。

通过泊坞窗走出入门文档(https://docs.docker.com/get-started/part4/#create-a-cluster),命令:

docker-machine scp docker-compose.yml myvm1:~ 

当即返回:

Lost connection 
Exit Status 1 

最后,我跟踪它到我的/ etc/SSH/ssh_config中当我尝试没有docker-machine ssh handholding的经典“scp”命令时。在“SCP”命令立即返回,抱怨以下不亲和系:

GSSAPIKeyExchange no 
GSSAPITrustDNS no 

我评论者淘汰,这缓解了问题,“泊坞窗机SCP”能按预期工作。我没有在其他地方发现这个解决方案。

我的系统细节粘贴在下面。希望这可以帮助那里的人。

OS

OS X塞拉利昂 系统版本:MacOS的10.12.3(16D32) 内核版本:达尔文16.4.0

泊坞

客户: 版本:17.05.0策 API版本:1.29 转到版本:go1.7.5 git的承诺:89658be 内置:周四5月4日21时43分09秒2017年 OS /拱门:达尔文/ AMD64

服务器: 版本:17.05.0-ce API版本:1.29(最低版本1.12) Go版本:go1.7。5 GIT中提交:89658be 内置:星期四5月4日21点43分09秒2017 OS /拱:LINUX/AMD64 实验:真

的VirtualBox

版5.1.22 r115126