Docker - 避免父文件夹名称

迈克尔·雅库贝齐

我有以下几点docker-compose.yml

version: '3.5'

services:
  postgres:
    container_name: my_container
    image: postgres:9.6.16-alpine
    environment:
      POSTGRES_USER: ${POSTGRES_USER:-xxxx}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-xxxx}
      PGDATA: /data/postgres
    volumes:
      - postgres:/data/postgres
      - ./init.sql:/docker-entrypoint-initdb.d/init.sql      
    ports:
      - "31338:5432"
    networks:
      - postgres
    restart: unless-stopped
  
networks:
  postgres:
    driver: bridge

volumes:
    postgres:

这是带有空 postgres 数据库的 docker 镜像。它初始化并工作正常,我唯一不喜欢的是它在 Docker 仪表板中的样子:

在此处输入图片说明

db父文件夹,它是 docker-compose.yml 所在文件夹的名称。我想避免使用这个父文件夹。

我应该改变什么docker-compose.yml来摆脱父文件夹?

阿克谢·赫格德

除非您修改仪表板的 UI,否则您将无法避免此项目名称,但是您可以使用-p选项更改项目名称

默认情况下,project-name 将使用包含您的docker-compose.yml.

要使用其他名称覆盖,您可以使用-p如下选项

# docker-compose -p <project_name-goes-here> up -d

参考:

-p, --project-name NAME     Specify an alternate project name
                              (default: directory name)

COMPOSE_PROJECT_NAME设置项目名称。该值在启动时与服务名称一起添加到容器中。例如,如果您的项目名称是 myapp 并且它包含两个服务 db 和 web,那么 Compose 将分别启动名为 myapp_db_1 和 myapp_web_1 的容器。

设置此项是可选的。如果不设置此项,则COMPOSE_PROJECT_NAME默认为项目目录的基本名称。另请参阅 -p 命令行选项。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章