[Django]-How to connect to a postgres database in a docker container?

3👍

You’re not using the username and the password you provided in your docker-compose file. Try this and then enter my_password:

docker exec -it container_id psql -U my_user -d my_db --password

Check the official documentation to find out about the PostgreSQL terminal.

0👍

I would also like to add, in your compose file you’re not exposing any ports for the db container. So it will be unreachable via external sources (you, your app or anything that isn’t ran within that container).

0👍

I think you need to add environment to project container.

   environment:
      - DB_HOST=db
      - DB_NAME=my_db
      - DB_USER=youruser
      - DB_PASS=yourpass
   depends_on:
      - db

add this before depends_on

And now see if it solves

0👍

You should add ports to the docker-compose for the postgres image,as this would allow postgres to be accessible outside the container

- ports: 
   "5432:5432"

You can checkout more here docker-compose for postgres

Leave a comment