3

我在 Windows 上看到 Docker 的快捷方式是:

C:\Program Files\Git\bin\bash.exe" --login -i "C:\Program Files\Docker Toolbox\start.sh"  

我用git-bashCmder/ConEmu.

我想在该控制台中启动时执行此脚本,因此我将所有终端都放在包含在 1 个程序中的选项卡中,而不是这里的 git-bash 和那里的 docker。

我很难找到让这个 .sh 文件运行的正确方法。我发现引号与从 Windows 快捷方式运行新的终端窗口不同。

我试过了:

"C:\Program Files\Git\bin\bash.exe" --login -i "C:\Program Files\Docker Toolbox\start.sh""

返回:

未安装 VirtualBox 或 Docker Machine。请重新运行 Toolbox 安装程序并重试。
好像出了什么问题。按任意键继续...

C:\Windows\System32\cmd.exe /c ""C:\Program Files\Git\bin\bash.exe" --login -i -- C:\Program Files\Docker Toolbox\start.sh"

返回:

bash: C:\Program: 没有这样的文件或目录

当前目录:

C:\Code\cmder_mini

要执行的命令:

"C:\Windows\System32\cmd.exe" /c ""C:\Program Files\Git\bin\bash.exe" --login -i -- C:\Program Files\Docker Toolbox\start.sh"

ConEmuC:根进程存活不到 10 秒,ExitCode=127。
按 Enter 或 Esc 关闭控制台...

4

3 回答 3

4

我为我找到了一个非常简单的解决方案:只需将 Cmder / ConEmu 设置为控制台应用程序的默认终端。之后,Docker 快速启动终端直接打开 Cmder/ConEmu,而不是使用本机 Windows CMD。:)

您将在设置对话框中找到设置(Win+Alt+P 或右键单击窗口标题栏)。然后转到:

集成 -> 默认术语

选中“强制 ConEmu 作为控制台应用程序的默认终端”复选框,然后按“保存设置”。

于 2016-10-21T07:29:21.067 回答
1

我找到了一个很好的解决方案,可以在我打开的任何 cmder 终端中正常使用 docker。

只需将此代码粘贴到 cmderRoot/config/user-profile.cmd

FOR /F "tokens=* USEBACKQ" %%F IN (`docker-machine status`) DO (
  SET machine_status=%%F
)


IF NOT %machine_status% == Running (
   cmd /c "docker-machine start default"
) 

FOR /F "tokens=*" %%i in ('docker-machine env') do @%%i
于 2018-02-08T07:37:08.633 回答
1

一个 gitbash.exe应该继承你的 %PATH% 作为 $PATH

但是docker 工具箱 Windowsstart.sh还依赖于其他应该在调用之前设置的环境变量:

  • DOCKER_MACHINE: path/to/docker-machine.exe(包括exe本身)
  • VBOX_INSTALL_PATH: VirtualBox 的路径。

确保在调用 ConEmu 并调用您的第一个命令之前先定义这些。

于 2016-02-07T05:16:46.780 回答