docker-compose 不能使用 .env 中的变量



Docker Compose不能在docker-compose.yml中使用来自.env的变量。CCD_ 4位于与CCD_ 5相同的目录中。

.env:

port:3306

docker-compose.yml:

ports:
- ${port}:${port}

文件显示了完全相同的例子,并说它工作

web:
image: "webapp:${TAG}"

执行docker-compose up时出错

WARNING: The port variable is not set. Defaulting to a blank string.
ERROR: The Compose file './docker-compose.yml' is invalid because:
services.mariadb.ports is invalid: Invalid port ":", should be [[remote_ip:]remote_port[-remote_port]:]port[/protocol]

如何修复?

来源https://docs.docker.com/compose/env-file/:

语法规则

以下语法规则适用于.env文件:

  • Compose希望env文件中的每一行都是VAR=VAL格式
  • 以#开头的行将作为注释处理并被忽略
  • 空行将被忽略
  • 引号没有特殊处理。这意味着它们是VAL的一部分

.env中,使用=而不是:

您的.env格式似乎有误。尝试:

PORT = 3306

相关内容

  • 没有找到相关文章

最新更新