无法从部署在 portainer 上的 django 容器连接另一台主机上的 mysql 数据库



我在portaler上部署了一个django-docker容器。在settings.py中,我指定了数据库所在位置的ip。由于某种原因,它总是重定向到portaler主机的ip。

PS。我正在使用nginx代理管理器进行反向代理。

需要在同一个docker网络上才能进行隔离通信!

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网络上的任何容器访问的容器的地址。

更新

我发现了问题。原来这只是一个防火墙阻止了我的连接。

最新更新