Docker-compose django не может подключиться к postgres
Я пытаюсь докеризировать существующее приложение django. Я следовал примеру docker-compose и файлам docker на https://docs.docker.com/samples/django/
Я добавлял ссылки и предложения сетей, как указано в других сообщениях, безрезультатно.
Я вызвал базу данных самостоятельно с помощью docker-compose up db и запустил docker ps и подтвердил, что она работает, принимает соединения и имеет имя db. Я не уверен, что еще можно попробовать.
Мой docker-compose:
version: '3'
services:
#octoprint:
# image: octoprint/octoprint
# restart: unless-stopped
# ports:
# - 16766:16766
# volumes:
# - ./octoprint:/octoprint
# logging:
# driver: none
db:
image: postgres
volumes:
- ./data/db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
container_name: db
networks:
harpnetwork:
harp:
build:
context: .
dockerfile: docker/harp/Dockerfile
volumes:
- ./harp:/harp
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
ports:
- 16765:16765
depends_on:
- db
networks:
harpnetwork:
links:
- db:db
networks:
harpnetwork:
Мой конфиг django db:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': os.environ.get('POSTGRES_NAME'),
'USER': os.environ.get('POSTGRES_USER'),
'PASSWORD': os.environ.get('POSTGRES_PASSWORD'),
'HOST': 'db',
'PORT': 5432,
}
}
и мой Dockerfile для сборки проекта django
From python:3.10
COPY ./harp harp
WORKDIR /harp
RUN pip install -r requirements.txt
RUN python manage.py migrate
CMD ["python", "manage.py", "runserver", "0.0.0.0:16765"]