Gitlab秘密变量>&燃气轮机&燃气轮机;Spring Boot application.yml

Gitlab秘密变量>&燃气轮机&燃气轮机;Spring Boot application.yml,spring,spring-boot,docker,gitlab,gitlab-ci,Spring,Spring Boot,Docker,Gitlab,Gitlab Ci,如何在application.yml中引用gitlab秘密变量?我假设它只能在gitlab-ci.yml上下文中访问,并且必须以某种方式作为VM参数从那里移动到Docker映像中 如果有问题,我将在Rancher环境中部署。只需导出它或将其作为命令行参数传递给您CIscript。比如: gitlab ci.yml deploy-app: stage: deploy image: whatever script: - export MY_SECRET - ... 或

如何在application.yml中引用gitlab秘密变量?我假设它只能在gitlab-ci.yml上下文中访问,并且必须以某种方式作为VM参数从那里移动到Docker映像中


如果有问题,我将在Rancher环境中部署。

只需导出它或将其作为命令行参数传递给您
CI
script。比如:

gitlab ci.yml

deploy-app:
  stage: deploy
  image: whatever
  script:
    - export MY_SECRET
    - ...

deploy-app:
  stage: deploy
  image: whatever
  script:
    - docker run -it -e PASSWORD=$MY_SECRET whatever ...

谢谢你的回复!我已经尝试了
-导出我的_SECRET
,但是rancher作业仍然终止,因为没有变量就无法初始化bean。是否可能是我在错误的项目中设置了secret变量?Microservice项目构建而不是运行docker映像(我在您的回复中看到
docker run
)。这是另一个组成rancher堆栈的项目,该堆栈提取docker图像,然后运行它。或者可以在生成时和运行时同时注入变量吗?请尝试
-echo$MY\u SECRET
,然后
导出新的\u SECRET=$MY\u SECRET
。第一条语句将显示您是否已初始化它,第二条语句将以不同的名称将它导出到脚本您确定我需要$-前缀吗?在gitlab GUI中,变量没有$As@grapes说您需要$prefix,有关gitlab ci中变量的更多信息,您可以找到Ok,谢谢!我可以在Gitlab CI管道中看到带有变量值的echo输出。但是,当rancher composing项目将以前构建的docker映像反斜体化时,我仍然得到错误
java.lang.IllegalArgumentException:无法解析值“${NEW\u SECRET}”中的占位符“NEW\u SECRET”
(在rancher Runner的日志中)