【发布时间】:2020-10-05 20:11:39
【问题描述】:
有一个qgis项目,它有一个连接到数据库并从http://localhost:5432获取数据的层。当项目在 Qgis 桌面中打开时 - 一切正常 - 您在 postgres (localhost:5432) 中更新数据 - 图层在地图上更新。
有一个在 docker 容器内启动的 QGIS 服务器。我将项目放在 qgis-server docker 容器(/etc/qgisserver)中,但项目无法在另一个 docker 容器中设置与数据库的连接(localhost:5432)。
我不明白如何让容器内的 qgis 服务器引用它的 localhost:5432,但可以访问主机的 localhost:5432(可以访问来自另一个容器的 postgres)。
我尝试过这样做但没有成功:
services:
app_postgres:
image: kartoza/postgis:latest
container_name: app_postgres
volumes:
- ~/volumes/jhipster/app/postgresql/:/var/lib/postgresql/data/
environment:
- POSTGRES_USER=app
- POSTGRES_PASSWORD=app
- POSTGRES_DBNAME=app
- POSTGRES_MULTIPLE_EXTENSIONS=postgis,hstore,postgis_topology,postgis_raster,pgrouting
ports:
- 5432:5432
qgisserver:
image: camptocamp/qgis-server:latest
volumes:
- ~/qgis/projects:/etc/qgisserver
links:
- app_postgres:db
ports:
- 8380:80
depends_on:
- app_postgres
【问题讨论】:
标签: docker docker-compose postgis qgis