【问题标题】:Setting boolean value in docker-compose.yaml using environment variable使用环境变量在 docker-compose.yaml 中设置布尔值
【发布时间】:2019-06-01 23:09:27
【问题描述】:

作为 docker 文档 suggests docker-compose 文件中的布尔值应该用单引号括起来以避免 YAML 解析器的误解。 我有 docker-compose 文件,该文件使用调用它的 shell 的环境变量填充一些值

myservice:
  environment:
    - firstvar: ${MY_FIRST_VAL}
    - ...
    - booleanvar: ${MY_BOOLEAN_VAL} 

MY_BOOLEAN_VAL 可以是truefalse,并通过配置文件公开。 我尝试了'${MY_BOOLEAN_VAL}'"${MY_BOOLEAN_VAL}" 而不是${MY_BOOLEAN_VAL},希望docker stack deploy 强制使用类似bash 的机制来中和YAML 解析器,但无济于事。

如何使用环境变量传递布尔值来编写文件?

【问题讨论】:

  • 嘿,您是否尝试在配置文件中将 MY_BOOLEAN_VAL 设置为 'true'
  • 就像 bash 文件中的 export MY_BOOLEAN_VAL='true' 一样,当我调用它时引号会被删除。

标签: docker docker-compose yaml


【解决方案1】:

我相信你混淆了语法,试试:

environment:
  - booleanvar=${MY_BOOLEAN_VAL}

environment:
  booleanvar: ${MY_BOOLEAN_VAL}

【讨论】:

  • 使用- booleanvar='${MY_BOOLEAN_VAL}' 解决了这个问题。谢谢!
猜你喜欢
  • 2022-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-11
  • 2021-08-23
  • 2018-07-20
  • 2022-11-10
  • 2018-10-12
相关资源
最近更新 更多