问题描述

Nginx Proxy manager 默认标准情况下启动时会尝试向ip-ranges.amazonaws.com获取ip-ranges.json。但是可能由于某种未确定的原因导致程序卡在这一步,日志如下:

[12/3/2021] [12:48:57 AM] [IP Ranges] › ℹ  info      Fetching IP Ranges from online services...
[12/3/2021] [12:48:57 AM] [IP Ranges] › ℹ  info      Fetching https://ip-ranges.amazonaws.com/ip-ranges.json

没有报错,但是又没有进一步的运行报告,显然是卡在这一步了。

程序虽然没有报错,由NPM反向代理的网站也可以正常运行,但是NPM的后台无法进入,显示Bad gateway 报错。

报错示例

图注

Nginx Proxy Manager报错示例

解决方案

跳过ip-ranges.json获取

来源

该解决方案来自Github上issue的回复

NPM_CTR_NAME=nginxproxymanager
docker exec $NPM_CTR_NAME sed -i 's/\.then(internalIpRanges\.fetch)//g' /app/index.js
docker restart $NPM_CTR_NAME

更改DNS

来源

Quote

建议在官方文档 给出相应提示,部署在阿里云、腾讯云等国内云,建议使用自定义DNS,如google dns。

实际docker部署测试 nginx proxy manager 容器启动时去会访问一个亚马逊的IP库,https://ip-ranges.amazonaws.com/ip-ranges.json,这个ip在国内云主机dns中被屏蔽了,导致 bad gateway错误,无论新装升级或更换各种版本总是大概率出现,更改为google dns 故障解除。


版权页

This work is licensed under CC BY 4.0