我看到Windows上Docker的快捷方式是:
C:Program FilesGitbinbash.exe" --login -i "C:Program FilesDocker Toolboxstart.sh"
我在Cmder/ConEmu
中使用git-bash
.
我想在那个控制台中启动时执行此脚本,所以我拥有所有我的终端包含在 1 个程序中的选项卡中,而不是这里的 git-bash,docker那里。
我找不到运行此.sh文件的正确方法。我发现报价与从中运行新的终端窗口不同窗口快捷方式。
我试过了:
"C:Program FilesGitbinbash.exe" --login -i "C:Program FilesDocker Toolboxstart.sh""
返回:
未安装 VirtualBox 或 Docker Machine。请重新运行工具箱安装程序,然后重试。
看起来出了什么问题。按任意键继续...
C:WindowsSystem32cmd.exe /c ""C:Program FilesGitbinbash.exe" --login -i -- C:Program FilesDocker Toolboxstart.sh"
返回:
bash: C:\Program: 没有这样的文件或目录
当前目录:
C:Codecmder_mini
要执行的命令:
"C:WindowsSystem32cmd.exe" /c ""C:Program FilesGitbinbash.exe" --login -i -- C:Program FilesDocker Toolboxstart.sh"
ConEmuC:根进程存活不到 10 秒,退出代码 = 127。
按回车键或 Esc 键关闭控制台...
我为我找到了一个非常简单的解决方案:只需将 Cmder/ConEmu 设置为控制台应用程序的默认终端即可。之后,Docker 快速入门终端直接打开 Cmder/ConEmu,而不是使用本机 Windows CMD:)。
您将在"设置"对话框中找到该设置(Win+Alt+P 或右键单击窗口标题栏(。然后转到:
集成 -> 默认术语
选中"强制ConEmu作为控制台应用程序的默认终端"复选框,然后按"保存设置"。
git bash.exe
应该继承你的 %PATH% 作为$PATH
但是 docker 工具箱 Windows start.sh
还依赖于应在调用之前设置的其他环境变量:
-
DOCKER_MACHINE
:path/to/docker-machine.exe
(包括exe本身( -
VBOX_INSTALL_PATH
:VirtualBox的路径。
确保在调用 ConEmu 并调用第一个命令之前首先定义这些命令。
我找到了一个很好的解决方案,可以在我打开的任何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