[英]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.