获取一个circleci环境变量以显示在docker机器中
我有一个部署过程,需要在docker构建阶段访问敏感变量 嗨。我想在circleci的docker构建阶段上传我的缩小javascript。看起来很简单,但是,我无法在构建阶段显示环境变量。我不想把我的AWS密钥放在Git中。我的第一个问题是,我无法获得任何环境变量,即使是硬编码的,也无法在构建系统中显示,我的第二个问题是我不想像下面那样硬编码它们(foo,baz) 在阅读文档时,我似乎更想这样做:获取一个circleci环境变量以显示在docker机器中,docker,dockerfile,circleci,Docker,Dockerfile,Circleci,我有一个部署过程,需要在docker构建阶段访问敏感变量 嗨。我想在circleci的docker构建阶段上传我的缩小javascript。看起来很简单,但是,我无法在构建阶段显示环境变量。我不想把我的AWS密钥放在Git中。我的第一个问题是,我无法获得任何环境变量,即使是硬编码的,也无法在构建系统中显示,我的第二个问题是我不想像下面那样硬编码它们(foo,baz) 在阅读文档时,我似乎更想这样做: machine: services: - docker dependencies:
machine:
services:
- docker
dependencies:
cache_directories:
- elasticsearch-2.4.0
override:
- docker info
- docker build --rm=false -t myapp/im . :
environment:
foo: bar
baz: 123
AWSKEY: $awskey
AWSSECRET: $awssecret
是的,这看起来很有希望
但是在Dockerfile中我可以
运行printenv
我没有看到任何一个环境变量
有人能告诉我我做错了什么吗?我的想法全错了吗?在circle ci中的环境变量面板的构建阶段尝试使用AWS creds是否可行?(如下图所示)
在Dockerfile中,您可以添加
ENV AWSKEY@value@
在构建容器之前,只需将@value@
替换为环境变量$AWSKEY
machine:
services:
- docker
dependencies:
cache_directories:
- elasticsearch-2.4.0
override:
- docker info
- docker build --rm=false -t myapp/im . :
environment:
foo: bar
baz: 123
AWSKEY: $awskey
AWSSECRET: $awssecret