Невозможно подключить базу данных mysql на другой хост-машине из контейнера django, развернутого на portainer
У меня есть django docker контейнер, развернутый на portainer. В settings.py я указал ip, на котором размещена моя база данных. По какой-то причине она всегда перенаправляется на ip хост-машины portainer.
PS. Я использую nginx proxy manager для обратного прокси.
Необходимо быть в той же сети докеров, чтобы взаимодействовать как изолированные!
version: '3'
services:
db:
container_name: postgres
image: postgres
restart: always
ports:
- 5432:5432
volumes:
- db:/var/lib/postgresql/data
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: password
POSTGRES_DB: dbname
networks:
- mystack
app:
container_name: app-python
image: myimage
restart: always
ports:
- 8080:8080
volumes:
- app:/data
networks:
- mystack
volumes:
db: {}
app: {}
networks:
mystack:
Например, вы можете подключиться к базе данных просто, используя db:5432. db - это имя сервиса, а также адрес контейнера, доступного из любого контейнера в сети mystack.
Обновить
Я нашел проблему. Оказалось, что это просто брандмауэр блокирует мое соединение.