postgres 和 docker-compose:无法创建自定义角色和数据库

2024-04-11

我正在尝试使用自定义用户和数据库创建一个简单的 postgreSQL 容器。

这是我的 docker-compose 文件:

version: '2'
services:
  db.postgres:
    container_name: db.postgres
    image: postgres:10
    environment:
      - POSTGRES_USER:'myuser'
      - POSTGRES_PASSWORD:'myuserpassword'
      - POSTGRES_DB:'mydb'
    ports:
      - '5432:5432'
    volumes:
      - ./pgdata:/var/lib/postgresql/data

当我尝试连接到我的数据库时出现错误。

docker exec -it db.postgres psql -U myuser myuserpassword
psql: FATAL:  role "myuser" does not exist

OR

$ docker exec -it db.postgres /bin/bash
root@1a0531e0350f:/# psql -U myuser
psql: FATAL:  role "myuser" does not exist

创建数据库时,Docker-compose 环境变量似乎被忽略。

我不知道我能做什么。你知道这个问题吗?

谢谢 !


修改 docker-compose.yml 文件如下:

version: '2'
services:
  db.postgres:
    container_name: db.postgres
    image: postgres:10
    environment:
      - POSTGRES_USER=myuser
      - POSTGRES_PASSWORD=myuserpassword
      - POSTGRES_DB=mydb
    ports:
      - '5432:5432'
    volumes:
      - ./pgdata:/var/lib/postgresql/data

然后完全删除当前数据并重新运行docker-compose up.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

postgres 和 docker-compose:无法创建自定义角色和数据库 的相关文章

随机推荐