我有一个用于启动我的应用程序的脚本,我也想用它来设置一些环境变量。这样我就可以加密S3存储桶中的敏感环境变量并在应用程序之前加载它们。这是我的脚本start.sh
:
#!/bin/bash
# Load the S3 secrets file contents into the environment variables
eval $(aws s3 cp s3://secret-bucket-location/integration-secrets.txt - | sed 's/^/export /')
#I have also tried exporting variables here to see if my app picks them up
export TEST_ENV_VAR=testing
pm2 start server.js
结果是没有设置任何环境变量。但是,仍然会设置Elastic Beanstalk UI控制台中设置的那些。
似乎部分EB启动配置会在某些时候擦除它们。
我可以在任何地方运行此逻辑以允许我设置变量吗?或者还有另一种方法吗?
谢谢!
答案 0 :(得分:0)
我认为用pm2 start
传递它们你会这样做,而不是EXPORT
:
MY_VAR1=value1 MY_VAR2=value2 pm2 start server.js