簡體   English   中英

如何使用我的 java 應用程序控制 nginx 反向代理?

[英]How can I control nginx reverse proxy with my java app?

我使用 nginx 反向代理和 docker 並希望自動化我的 nginx 配置。 例如,我想告訴我的 java 應用程序域/服務器名稱(例如 myapp.example.com)和后端系統。 我的 java 應用程序應該告訴 nginx 進行配置。

這是否可能,或者是否有具有該功能的替代反向代理軟件。

實現此目的的一種方法是使用兩個容器(java 容器和 nginx 容器)都可以訪問的共享卷,以及 nginx 配置文件所在的位置。 如果 java 不在 docker 中,這也可以工作,那么它只需要訪問映射的文件夾。

每當您想更新配置時,只需重寫它,然后觸發 nginx 重新加載。 有多種方法可以實現這一目標。 最容易使用

docker exec nginx-container-name nginx -s reload

eg via Java ProcessBuilder or the awesome Java Docker Project https://github.com/docker-java/docker-java .

Note: If you run java inside a docker container you have to map the docker socket inside the container (eg using -v /var/run/docker.sock:/var/run/docker.sock from shell).

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM