【问题标题】:postgres and docker-compose : can't create a custom role and databasepostgres 和 docker-compose:无法创建自定义角色和数据库
【发布时间】:2018-08-13 05:33:07
【问题描述】:

我正在尝试使用自定义用户和数据库创建一个简单的 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

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

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

我不知道我能做什么。你对问题有什么想法吗?

谢谢!

【问题讨论】:

    标签: postgresql docker docker-compose


    【解决方案1】:

    如下修改你的 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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 2018-03-02
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多