如何在Docker容器中显示PostgreSQL数据库



我在docker容器中具有django project和potgresql数据库。我的问题是如何显示我的数据库?我正在尝试docker exec -ti myproject_django_1 /bin/bashdocker exec -ti myproject_db_1 /bin/bash,但是在这两种情况下,我都无法使用psql,因为psql: FATAL: role "root" does not existbash: psql: command not found

docker-compose.yml:

version: '3'
services:
  redis:
    image: redis:alpine
  db:
    image: postgres
  django:
    build: .
    command: python3 manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db
    links:
      - redis
  angular:
    build: frontend
    ports:
      - "4200:4200"
    depends_on:
      - django

解决方案:

docker exec -it [DB_CONTAINER_ID] psql -U [USERNAME]

您处于正确的方式,只需在容器内更改用户:

docker exec -ti myproject_db_1 /bin/bash
su - postgres
psql

最新更新