【发布时间】:2020-09-23 07:07:42
【问题描述】:
我正在尝试将图像从我的 Node.js 后端存储到 AWS S3 存储桶。该应用程序托管在 heroku 上。这在我的本地环境中运行良好,但是一旦我使用 gitlab CI/CD 将应用程序部署到 heroku,我就会收到以下错误:
Missing credentials in config, if using AWS_CONFIG_FILE, set
AWS_SDK_LOAD_CONFIG=1","errno":"ECONNREFUSED","code":"CredentialsError","syscall":"connect"
在我的本地环境中,我将 API 密钥存储在 .env 文件中,如下所示:
BUCKET_NAME=XYZ
AWS_KEY_ID=XYZ
AWS_ACCESS_KEY=XYZ
我的节点服务器会得到这样的变量:
const s3 = new AWS.S3({
accessKeyId: process.env.AWS_KEY_ID,
secretAccessKey: process.env.AWS_ACCESS_KEY
});
const BUCKET_NAME = process.env.BUCKET_NAME
这适用于我的本地环境。在 Gitlab 上,我使用完全相同的名称存储相同的变量
但是当我尝试存储文件时出现上述错误。
【问题讨论】:
-
我会尝试按照建议重命名变量,也许这可以解决它
标签: node.js amazon-web-services amazon-s3 gitlab environment-variables