簡體   English   中英

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

[英]How do I undo the command $ eval “$(docker-machine env blog)”

我認為該命令將$ docker命令重定向到 docker 機器。 現在我所有的 docker 命令都給了我一個錯誤FATA[0000] Couldn't read ca cert...接下來是我創建的 docker-machine 的路徑。 如何修復我的外殼?

您正在尋找的是:

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

您也可以重新啟動您的外殼。 這將刪除minkube docker-env導出的變量。

我一直在尋找這個問題的答案已經有一段時間了。 在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

我可以看到這是一個舊帖子,但如果其他人遇到這個問題,像我這樣的 docker 新手這可以提供幫助。 通過鍵入:

eval $(docker-machine env nameOfVm) 

您正在將當前的 shell 設置為在該 docker-machine 中使用 docker。 您可以檢查是否在活動選項卡下鍵入docker-machine ls ,該docker-machine ls狀態從- to *更改- to * 您還可以通過運行docker-machine active來檢查哪台docker-machine active

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

eval $(docker-machine env -u)

它將取消活動機器的變量設置(您不必指定機器的名稱)。 這都是在 macOS 下,但我認為在 linux 上也應該是一樣的。 您可以在此處閱讀更多相關信息: Docker 文檔:docker-machine env

你所要做的就是

docker-machine env machine-name

然后,復制並運行輸出中的最后一段以設置或刪除 env 變量。

在 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)

就這樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM