如何撤消命令$ eval" $(docker-machine env blog)"

时间:2015-05-30 19:56:07

标签: bash docker docker-machine

我认为该命令将FATA[0000] Couldn't read ca cert...命令重定向到docker机器。现在我所有的docker命令都给我一个错误<br>,后面是我创建的docker-machine的路径。我该如何修理我的shell?

5 个答案:

答案 0 :(得分:35)

您正在寻找的是:

eval "$(docker-machine env -u)"

它将取消设置DOCKER_*变量。

为了记录,这里是docker-machine env -u

的输出
unset DOCKER_TLS_VERIFY
unset DOCKER_HOST
unset DOCKER_CERT_PATH
unset DOCKER_MACHINE_NAME

答案 1 :(得分:2)

我一直在寻找答案。在stackoverflow上发布问题后不久,我意识到输入到终端的导出命令docker在启动时解决了我的问题。

To connect the Docker client to the Docker daemon, please set:
export DOCKER_HOST=tcp:// some IP address
export DOCKER_CERT_PATH= some file path
export DOCKER_TLS_VERIFY=1

答案 2 :(得分:1)

我可以看到这是一个很老的帖子,但是如果其他人遇到这个问题,谁是像我这样的码头工作者,这可以提供帮助。输入:

eval $(docker-machine env nameOfVm) 

您正在设置当前的shell以在该docker-machine中使用docker。您可以检查是否输入docker-machine ls 在活动选项卡下,该状态从该机器的- to *更改。您还可以通过运行docker-machine active来检查哪台计算机处于活动状态。

如果要撤消eval,只需运行:

eval $(docker-machine env -u)

它将取消设置活动机器的变量(您不必指定机器的名称)。这一切都在macOS下,但我认为它在linux上应该是相同的。 你可以在这里阅读更多相关信息: Docker documentation: docker-machine env

答案 3 :(得分:0)

您也可以重新启动Shell。这将删除If .querySelectorAll("#login-bis-id-btn").length > 0 Then 'present ....do login page stuff Else 'do other stuff End If 导出的变量。

答案 4 :(得分:0)

您要做的就是运行

docker-machine env machine-name

然后,复制并运行输出中的最后一段以设置或删除环境变量。

在Windows中看起来像这样:

eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env machine-name)

如果已设置,则docker在尾部添加“ -u”以简化任务。

在Windows中是这样的:

eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env -u)

仅此而已。