首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS CodePipline & Codebuild -如何将环境变量添加到Docker-Image?

AWS CodePipline & Codebuild -如何将环境变量添加到Docker-Image?
EN

Stack Overflow用户
提问于 2021-02-22 04:07:03
回答 1查看 130关注 0票数 0

谢谢你的帮助。

我正在使用AWS-CodePipline和AWS-CodeBuild(对于我的Dockerfile,并将其保存在ECR中)。到目前为止,它是有效的。但是我不知道如何在项目中获取环境变量。所以我把我的Github账号和CodePipline连接起来,我没有为了安全而把我的envs推送到Github。所以现在我在Github上有一个env-file,如下所示:

代码语言:javascript
复制
config/prod.env

ACCESS_TOKEN_SECRET=
CSRF_TOKEN_SECRET=
ACCESS_TOKEN_PASSWORD=
REFRESH_TOKEN_SECRET=
CLUDINARY_API=
CLUDINARY_API_SECRET=
CLUDINARY_API_NAME=
GOOGLE_AUDIENCE=
ORIGIN=
GOOGLE_TOKEN=
DATABASE_URL=
NODE_ENV=
FORGOTTEN_PASSWORD=
YAHOO_PASSWORD=

现在在AWS-CodeBilder上有一个环境变量的部分(来自AWS-Doc的图像)。

现在我感觉这不是放env的地方,因为如果我把我所有的变量都放在字段中,我会得到错误:

代码语言:javascript
复制
ValidationException
1 validation error detected: Value at 'pipeline.stages.2.member.actions.1.member.configuration' failed to satisfy constraint: Map value must satisfy constraint: [Member must have length less than or equal to 1000, Member must have length greater than or equal to 1]

举个例子:

代码语言:javascript
复制
Name: ACCESS_TOKEN_SECRET
Value: My_SUPER_PASSWORD

如果我只使用了几个变量,我不会得到错误,但对于所有变量,我都会得到错误(与env组合无关)。我哪里做错了?如何使用CodeBuild & CodePipline将环境变量放到ECR中的Docker-Image中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-22 06:40:29

要从Code Build Project传递变量,您需要在buildspec.yml文件中设置env: section,例如

代码语言:javascript
复制
env:
  variables:
    Execution_ID: $Execution_ID
    Commit_ID: $Commit_ID
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66306591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档