docker - 使用默认值时访问 COMPOSE_PROJECT_NAME

标签 docker docker-compose

与 docker-compose 的文档相反 says我似乎无法访问 docker-compose.yml 文件中 COMPOSE_PROJECT_NAME 的值。

$ cat docker-compose.yml 
version: '3'
services:
  web:
    build: .
    ports:
      - "5000:5000"
    environment:
      - "PROJECT_NAME=${COMPOSE_PROJECT_NAME}"
  redis:
    image: "redis:alpine"

该变量未设置为默认值:

WARNING: The COMPOSE_PROJECT_NAME variable is not set. Defaulting to a blank string.
      PROJECT_NAME: ''

传入-p foobar时也没有设置:

WARNING: The COMPOSE_PROJECT_NAME variable is not set. Defaulting to a blank string.
      PROJECT_NAME: ''

COMPOSE_NAME_PROJECT 定义为使用 .env 文件或在环境中设置它的唯一方法是什么?

最佳答案

我只是在尝试相同的...似乎该变量并不意味着在 compose-yaml 中使用,而只是用于配置 docker-compose CLI:

https://docs.docker.com/compose/reference/envvars/

您可以使用以下方法很好地检查变量插值

docker-compose 配置

关于docker - 使用默认值时访问 COMPOSE_PROJECT_NAME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47907549/

相关文章:

docker - 是否可以使用单个 docker compose 文件在多个主机中创建容器?

Docker Compose 文件无效,不允许附加属性

docker - 在 docker-compose 中的同一个端口上运行多个服务

docker - 通过Docker在CDH中使用WebHDFS/HttpFS

php - Docker 组成多个子网站

docker - systemd-coredump docker 编辑的卷

Dockerfile 未在 RUN composer install 命令中使用缓存

wordpress - Docker本地环境自定义本地域(hosts文件?)

docker - Elastic search AccessDeniedException[/usr/share/elasticsearch/data/nodes/0] -- 拒绝访问错误

selenium - docker-compose 运行多个任务而不共享依赖项