已安装 Google Cloud SDK 但无法访问 gcloud

Installed Google Cloud SDK but can't access gcloud

我正在尝试在 OSX 上安装 Google Cloud SDK 并执行此 node.js 教程 (https://cloud.google.com/nodejs/getting-started/hello-world) 并让 运行 陷入困境找不到 gcloud 的地方。设置或保存文件的位置可能只是一些简单的事情。

我在这里阅读了大量其他帖子,但未能解决此问题。这是所有 steps/issues:

我已经在开发控制台中创建了一个项目。

安装云sdk

MacBook-Pro-2:~ nico$ curl https://sdk.cloud.google.com | bash

然后走流程

Directory to extract under (this will create a directory google-cloud-sdk) (/Users/nico):

Do you want to help improve the Google Cloud SDK (Y/n)?  y

Modify profile to update your $PATH and enable bash completion? (Y/n)? y

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]:

然后我尝试验证:

MacBook-Pro-2:~ nico$ gcloud auth login
-bash: gcloud: command not found

然后进入到一个cloud sdk bin目录

MacBook-Pro-2:~ nico$ cd google-cloud-sdk/bin
MacBook-Pro-2:bin nico$ ./gcloud auth login

认证成功

 MacBook-Pro-2:bin nico$ ./gcloud config set project helloworld-project

设置项目成功

MacBook-Pro-2:bin nico$ ./gcloud components update app

ERROR: (gcloud.components.update) Your current working directory is inside the Cloud SDK install root: /Users/nico/google-cloud-sdk.  
In order to perform this update, run the command from outside of this directory.

然后我搬出那个目录

 MacBook-Pro-2:test_project nico$ gcloud components update app
-bash: gcloud: command not found

现在它不工作了,我是否必须在某个地方设置 gcloud 以便它可以在全球范围内访问?如何更新它并访问 gcloud 命令行工具?

查看安装工具的输出:

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]:

...安装工具似乎更新了“/Users/nico/.bash_profile”,而 Mac OS X 依赖于“/Users/nico/ .profile”的配置。将对“/Users/nico/.bash_profile”的更改复制到“/Users/nico/.profile”,然后关闭并重新启动终端以使更改生效。

在新的 shell 中,您可以使用以下命令查看是否定义了 "gcloud":

 which gcloud

它应该输出:

 /Users/nico/google-cloud-sdk/bin/gcloud

如果这不起作用,那么我建议您手动更新 PATH。为此,编辑 ~/.profile:

 nano ~/.profile

然后在最后添加以下行:

 export PATH="$HOME/google-cloud-sdk/bin:$PATH"

并重新启动您的 shell。请注意,如果您使用 shell 而不是内置终端,您可能需要编辑不同的文件(例如 ~/.bashrc 或 ~/.bash_profile 用于自定义 BASH安装和各种其他 "rc" 替代 shell 文件(例如 ZSH、CSH 等)来更新您的 PATH 变量。

如果这仍然不起作用,我建议您输入以下内容进行调试:

echo "$PATH"

... 这样您至少可以看到当前路径设置的内容。

在我的 ~/.bash_profile 菜单中我有一个错误,在顶部我有这一行:

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi source /Users/nico/.bash_profile

它抛出错误并与 gcloud 混淆,奇怪的是其他命令行变量在该错误下工作正常。

删除该行后 gcloud 工作正常。

我修改了我的

vi ~/.bash_profile

并在末尾添加了一行

source ~/.bashrc

然后您可以注销并重新登录或运行:

source ~/.bash_profile

添加该行后。

OS: Linux vagrant-ubuntu-trusty-64 3.13.0-116-generic #163-Ubuntu

或者干脆 运行:

echo "source ~/.bashrc" >> ~/.bash_profile
source ~/.bash_profile
which gcloud

给我看

/home/myusername/google/google-cloud-sdk/bin/gcloud