如何使用“Docker Quickstart 终端”启动另一个docker-machine?

7
在我的mac上,当我运行"Docker quickstart terminal"时,将启动default docker机器。
我在docker quickstart终端的start.sh中看到:
#!/bin/bash

VM=default
DOCKER_MACHINE=/usr/local/bin/docker-machine
VBOXMANAGE=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage

BLUE='\033[0;34m'
GREEN='\033[0;32m'
NC='\033[0m'

... more

如何在不修改此shell文件的情况下启动另一个docker机器?
1个回答

4
你可以简单地创建一个新的 Docker 机器:

你只需创建新的 Docker 机器

docker-machine create -d virtualbox --virtualbox-memory 2048 --virtualbox-disk-size 204800 my_new_machine

(替换 my_new_machine)

然后你可以使用ssh连接到它

docker-machine start my_new_container
eval $($DOCKER_MACHINE env my_new_container --shell=bash)
docker-machine ssh my_new_container

2
似乎“docker快速启动终端”只是一个方便使用“默认”docker机器的工具,如果我想要更多控制,我应该使用“docker-machine”,谢谢! - Freewind
这个命令是做什么的?eval $($DOCKER_MACHINE env my_new_container --shell=bash)我收到了一个错误:“eval不是一个被识别的命令…” - guilhermecgs
1
@guilhermecgs 你的操作系统是什么?目标是设置由 docker-machine env 显示的变量。请参阅 https://docs.docker.com/machine/reference/env/ 以获取 Mac 和 Windows 的 eval 替代方案。 - VonC
我正在使用Windows。因此,这个命令将“shell”环境变量设置为值“bash”。在Windows中,类似以下命令:docker-machine env my_new_container --shell=bash? - guilhermecgs
1
如 https://docs.docker.com/machine/reference/env/ 所述,在常规 CMD 会话中使用:docker-machine.exe env --shell cmd dev(将 dev 替换为您的 Docker 机器名称,仍需将结果复制并粘贴到该 CMD 会话中)。或者在 Powershell 会话中使用:docker-machine.exe env --shell=powershell dev | Invoke-Expression - VonC
1
@guilhermecgs,我通常不会费心去处理这些问题,我只需使用docker-machine ssh(https://docs.docker.com/machine/reference/ssh/)连接到我的机器,并在该ssh会话中直接执行docker命令。如果您不想通过ssh连接到机器并想要在本地执行docker命令,则可以使用`docker-machine env`。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接