Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql docker compose在为postgres创建容器时忽略环境变量_Postgresql_Docker - Fatal编程技术网

Postgresql docker compose在为postgres创建容器时忽略环境变量

Postgresql docker compose在为postgres创建容器时忽略环境变量,postgresql,docker,Postgresql,Docker,我总是得到角色x不存在,这意味着数据库是用默认用户名创建的,我的环境变量被忽略了,知道这里发生了什么吗 Docker-compose.yml version: '3.1' services: PostgreSQL: container_name: db-name image: postgres:12 restart: always environment: POSTGRES_PASSWORD: ${PG_PASSWORD} POSTG

我总是得到角色x不存在,这意味着数据库是用默认用户名创建的,我的环境变量被忽略了,知道这里发生了什么吗

Docker-compose.yml

version: '3.1'

services:
  PostgreSQL:
    container_name: db-name
    image: postgres:12
    restart: always
    environment:
      POSTGRES_PASSWORD: ${PG_PASSWORD}
      POSTGRES_USER: ${PG_USERNAME}
      POSTGRES_DB: ${PG_DB_NAME}
    volumes:
      - ./postgres-data:/var/lib/postgresql/data
    ports:
      - 5432:5432

当我在kitematic中查看时,我看到了正确的环境变量和值,但db没有考虑任何问题

尝试向下执行docker compose以删除容器,然后再次执行docker compose up,您可以从中获得更多帮助

尝试向下执行docker compose以删除容器,然后再次执行docker compose up,您可以从中获得更多帮助

您确定数据库尚未创建吗?只有当您装入的卷中的/var/lib/postgresql/data中的文件为空时,才会创建和初始化它。我使用forece重新创建docker compose up--强制重新创建我认为数据库不会持久我尝试了docker compose down--删除孤立--卷仍然存在相同的问题您确定数据库尚未创建吗?只有当您装入的卷中的/var/lib/postgresql/data中的文件为空时,才会创建和初始化它。我使用forece重新创建docker compose up--强制重新创建我认为数据库不会持久我尝试过docker compose down--删除孤儿--卷仍然是相同的问题感谢您提供的链接我在那里找到了答案,我让人手动删除docker compose创建的./postgres数据谢谢你的链接我在那里找到了答案,我让人手动删除docker compose创建的./postgres数据