【问题标题】:docker-machine on windows 10 - "You must have a copy of the scp binary locally to use the scp feature"Windows 10 上的 docker-machine -“您必须在本地拥有 scp 二进制文件的副本才能使用 scp 功能”
【发布时间】:2017-07-07 19:57:19
【问题描述】:

我正在使用命令: docker-machine scp manager:/home/docker/foo.txt .

但是,Windows PowerShell 会返回“您必须在本地拥有 scp 二进制文件的副本才能使用 scp 功能”。

我确定我已经安装了“docker for windows”和“docker toolbox”。那我该怎么办?

【问题讨论】:

  • 我也有同样的问题,但是我找不到任何解决方案,但是“docker-machine”创建的虚拟机中可以使用“wget”命令,你可以使用Tomcat或Nginx来映射文件到 http url,这可行但并不完美
  • 我在 Windows 10 上使用 Visual Studio Code(作为管理员)遇到了同样的问题。使用 Git Bash(以管理员身份)。
  • 我用过Docker Toolbox和Docker Quickstart Terminal(应该是基于Git bash的),不行。

标签: powershell docker scp docker-for-windows


【解决方案1】:

我在 Windows 8.1 上也遇到过类似的问题。我使用 Git Bash(在管理员模式下)而不是 Powershell 来解决它。

【讨论】:

  • 你是如何从 bash 运行 docker-machine 的?我收到“找不到命令”错误。
  • 好吧,我没有做任何特别的事情来从 bash 运行 docker-machine,它只是工作。但是,在我安装 docker 之前,我已经在我的机器上安装了 git-bash。
【解决方案2】:

与其试图绕过这个问题,为什么不直接解决呢?

如果您安装了 Git Bash,很可能您的机器上已经安装了scp.exe,因此您只需将scp.exe 所在的文件夹添加到您的PATH环境变量。

就我而言,scp.exe 位于 C:\Program Files\Git\usr\bin

这为我解决了同样的问题

【讨论】:

  • 谢谢,这让我一直使用 PowerShell。我喜欢 bash,只是不在 Windows 上。
【解决方案3】:

如果您碰巧安装了Git for Windowsdocker-machine scp 将在 Git Bash 中成功运行。

【讨论】:

    【解决方案4】:

    我在 Windows 10 上使用 Visual Studio Code 版本 1.14.0(以管理员身份)时遇到了同样的问题。使用 Git Bash(以管理员身份)。

    【讨论】:

      【解决方案5】:

      我通过使用我已经安装的名为 pscp.exe 的 Putty scp 程序解决了这个问题。

      (最初我尝试将 'pscp' 重命名为 'scp',但这不起作用,因为 docker 引擎使用 -o 选项发送 SSH 命令。'pscp' 没有 -o 选项。)

      您可以直接在命令行上使用 pscp。首先找出VM的IP地址:

      docker-machine env <VM_name>
      

      在您的情况下,VM 名称是“经理”。从 $Env:DOCKER_HOST 变量中取出 ip 地址(不带端口)。例如:

      $Env:DOCKER_HOST = "tcp://192.168.XXX.XXX:2376"
      

      然后使用pscp发送文件:

      pscp <file_to_send> docker@<ip_address_of_VM>:/home/docker/foo.txt
      

      系统将提示您输入“docker”用户的密码。我发现 docker 使用了一个默认密码“tcuser”,当我这样做的时候就可以了。

      【讨论】:

        猜你喜欢
        • 2016-01-14
        • 2018-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-16
        • 1970-01-01
        • 2015-08-11
        相关资源
        最近更新 更多