我想将 swagger-ui 添加到我的 docker-compose 设置中。我正在使用 postgres 和postgrest。我的设置大致如下:
version: '3'
services:
postgrest:
image: postgrest/postgrest
ports:
- 3000:3000
links:
- postgres
postgres:
image: postgres
ports:
- 5432:5432
volumes:
- "./pgdata:/var/lib/postgresql/data"
swagger:
image: swaggerapi/swagger-ui
expose:
- 8080
ports:
- 8080:8080
links:
- postgrest:postgrest
environment:
API_URL: http://localhost:3000
当我在本地进行测试时,这向我展示了正确的 API 文档 UI。当我部署时,http://localhost:3000不再提供 OpenAPI 定义,这会中断。我可以将 API_URL 更改为远程 URL,但是如果我正在测试一些更改,它将不会在本地更新,而且这通常似乎与这一点无关。
有没有办法大摇大摆地指出“在同一个 docker compose 设置中运行的 postgrest”?就像是:
swagger:
...
links:
- postgrest:postgrest
environment:
API_URL: http://postgrest:3000
有时 docker compose 可以做这样的魔术,例如在 nginx 中。
提前致谢!