Google cloud platform 如何在Google云平台上的计算引擎中使用环境变量?

Google cloud platform 如何在Google云平台上的计算引擎中使用环境变量?,google-cloud-platform,google-compute-engine,Google Cloud Platform,Google Compute Engine,我有一个应用程序运行在谷歌云平台上的计算引擎中,可以读取系统环境变量 我想知道如何将它们放在我的实例中,以便应用程序能够在运行时读取它们 下面是创建实例的方法: gcloud compute instances create ${PROJECT_ID} \ --image-family debian-9 \ --image-project debian-cloud \ --machine-type g1-small \ --scopes "userinfo-ema

我有一个应用程序运行在谷歌云平台上的计算引擎中,可以读取系统环境变量

我想知道如何将它们放在我的实例中,以便应用程序能够在运行时读取它们

下面是创建实例的方法:

gcloud compute instances create ${PROJECT_ID} \
    --image-family debian-9 \
    --image-project debian-cloud \
    --machine-type g1-small \
    --scopes "userinfo-email,cloud-platform" \
    --metadata-from-file startup-script=${SCRIPT} \
    --metadata release-url=${BUCKET_URL} \
    --zone ${ZONE} \
    --tags http-server
我有一些安全凭据,例如API密钥、密码等,我希望将它们上载到我的实例中,并将它们公开为env VAR以供我的应用程序读取

是否有任何控制台可用于此操作、标志或命令来自动执行此操作?

您可以在创建实例后多次执行此操作

这在中进行了解释。
例如,使用导出命令设置分区和区域变量,如:

$ export CLOUDSDK_COMPUTE_ZONE="us-central1-a"
$ export CLOUDSDK_COMPUTE_REGION="us-central1"
要使这些环境变量永久化,请执行以下操作:

Alternatif-1:使用bashrc文件

将这些导出命令包括在
~/.bashrc
文件中

您可以使用nano或vim来放置变量

sudo nano ~/.bashrc
然后重新启动终端和cek

$ env
Alternatif-2:使用启动脚本

您还可以在中使用export命令,使您的变量成为环境变量

创建实例后,您可以将其放置或通过以下文件放置:

gcloud compute instances create vm-1 \
    --metadata-from-file startup-script=$HOME/startup.sh \
    --zone=us-west1-a
如果实例已在运行,请按照说明设置

请记住,如果使用此启动脚本的方法,则每次设置新变量时都需要重新设置

无论选择何种方法,请确保
$env
设置正常工作。
最好通过在您的电脑中再次执行此操作,或者使用您电脑中的停止和启动按钮。

与您在任何其他电脑上执行此操作的方式相同?更严重的是,你能更精确一点吗?你在用什么操作系统?如何创建计算引擎@night gold在另一台计算机上我做heroku配置:set API_KEY=xxx。这可能是问题答案的一部分:如果在部署后重新创建一台机器会怎么样?您可以使用。它允许您定义在创建具有相同配置(包括环境变量)的新VM实例时要使用的实例属性。