AWS环境变量



我使用GUI,对AWS CLI不熟悉,也没有使用过。我是程序开发新手,这是我第一次部署到AWS。

有许多解决方案堆栈溢出使用CLI,但我正在寻找的是一个GUI解决方案。

问题:

程序需要使用环境变量,EB也设置了环境变量,但是仍然不能正常工作。(环境变量设置成功,无跳转错误)

我被卡住了2天,我用谷歌搜索并阅读了文档,但我还是解决不了这个问题。

我使用的AWS服务:

  • codePipeline到持续部署(github version 2)
  • EB是我的应用程序(Node 10x版本)

codePipeline,部署成功

一切看起来都很好,但网站只是得到502。

事件错误:100.0%的请求是错误的HTTP 4xx。无法确定应用程序运行状况的请求率(12.0个请求/分钟)不足。

我检查了E2C日志,它说jwt需要秘密或密钥,实际值保存在process.env.TOKEN_SECRET.

----------------------------------------
/var/log/web.stdout.log
----------------------------------------
Sep 17 10:15:57 ip-172-31-14-49 web: throw new TypeError('JwtStrategy requires a secret or key');
Sep 17 10:15:57 ip-172-31-14-49 web: ^
Sep 17 10:15:57 ip-172-31-14-49 web: TypeError: JwtStrategy requires a secret or key

有时错误会变成

----------------------------------------
/var/log/nginx/error.log
----------------------------------------
2021/09/17 15:55:34 [error] 9567#9567: *5385 connect() failed (111: Connection refused) while connecting to upstream, client: 172.31.35.193, server: , request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8080/", host: "172.31.14.49"

我的代码在config/passport:

let jwtOptions = {} 
jwtOptions.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken()
jwtOptions.secretOrKey = process.env.TOKEN_SECRET

My EB &E2C环境变量设置:

EB配置变量E2C配置变量

并且我检查事件说环境变量设置成功,并且没有错误消息。

可以看到,我已经设置了环境变量,系统也说我设置成功了,但是实际操作是不一样的。当程序执行时,仍然没有成功读取环境变量。

*对不起,中文图片,我已经更改为英文,但不能工作。可能是我的国家设置

因为我同时为环境变量和环境标签设置了键,所以出现了问题。

当我删除环境标签时,它正常工作。

最新更新