docker-compose.yml:为什么重启“否”必须带引号?

chl*_*soe 2 docker docker-compose

在docker-compose的docker docs(https://docs.docker.com/compose/compose-file/#restart)中,提供了以下重启选项:

restart: "no"
restart: always
restart: on-failure
restart: unless-stopped
Run Code Online (Sandbox Code Playgroud)

我只是想知道,为什么“ no”必须用引号引起来,而其他选项则不需要?docker-compose不能以no没有引号开头。

Tar*_*ani 5

原因是值,yes并且no被评估为truefalse。这就是为什么您需要使用双引号将其解释为字符串的原因

请参阅http://www.yaml.org/refcard.html

  • 那么将它用于此设置很奇怪。似乎“从不”是一个更好的选择。或者只是允许“no”作为布尔值,因为无论如何它在这里似乎意味着“false”。你的答案是正确的,只是评论说这感觉像是草率的设计。 (2认同)