Chr*_* G. 9 docker google-cloud-platform gcloud google-cloud-sdk kubectl
更新 gcloud 后,我收到此警告,但我该怎么做(我应该删除 Docker)吗?
WARNING: There are older versions of Google Cloud Platform tools on your system PATH.
Please remove the following to avoid accidentally invoking these old tools:
/Applications/Docker.app/Contents/Resources/bin/kubectl
Run Code Online (Sandbox Code Playgroud)
我的 .zshrc 中有这个:
# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/<NAME>/google-cloud-sdk/path.zsh.inc' ]; then source '/Users/<NAME>/google-cloud-sdk/path.zsh.inc'; fi
# The next line enables shell command completion for gcloud.
if [ -f '/Users/<NAME>/google-cloud-sdk/completion.zsh.inc' ]; then source '/Users/<NAME>/google-cloud-sdk/completion.zsh.inc'; fi
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
Run Code Online (Sandbox Code Playgroud)
yno*_*kyy 11
TLDR
/usr/local/bin/kubectl是 Docker 安装的链接:ls -l /usr/local/bin/kubectl=> /usr/local/bin/kubectl -> /Applications/Docker.app/Contents/Resources/bin/kubectl。删除链接没有副作用,解决了冲突:
rm /usr/local/bin/kubectl
理由
冲突与 Docker 提供的版本有关,kubectl因此检查 Docker 文档对此有何看法是有意义的。https://docs.docker.com/docker-for-mac/#kubernetes
提炼:
在 Docker Desktop for Mac 17.12 Edge (mac45) 及更高版本和 18.06 Stable (mac70) 及更高版本中,包含一个独立的 Kubernetes 服务器,可在您的 Mac 上运行,以便您可以测试在 Kubernetes 上部署 Docker 工作负载。
Kubernetes 客户端命令
kubectl包括并配置为连接到本地 Kubernetes 服务器。....
如果您
kubectl使用 Homebrew 或其他方法安装并遇到冲突,请删除/usr/local/bin/kubectl.
小智 10
发生这种情况是因为 docker-for-mac 为 kubectl 安装了一个 bin,而 gcloud-sdk 还安装了另一个带有gcloud components install kubectl.
我的建议是从 gcloud 卸载 kubectl 作为组件,覆盖来自 docker-for-mac 的符号链接,并且只使用自制软件安装的 bin。
试试这个命令:
gcloud components remove kubectl
brew install kubernetes-cli
brew link --overwrite kubernetes-cli
| 归档时间: |
|
| 查看次数: |
4554 次 |
| 最近记录: |