强大的Nginx配置生成器
本文折腾于
9
月中旬;
老苏虽然用过很多次 nginx
,但是对 nginx
并不熟悉,基本上是每次要用的时候才会去搜索解决方案,所以一直在找一个配置工具,Nginx Config
虽然不能完全满足老苏的需求,但也可以作为参考之用。
什么是 Nginx Config ?
Nginx Config
是一款可以一键生成Nginx
配置的神器,相当给力。支持反向代理、HTTPS
、HTTP/2
、IPv6
, 缓存、WordPress
、CDN
、Node.js
、Python
(Django
) 服务器等等。
如果你不想自己安装,只需要打开网站:https://nginxconfig.io,按照自己的需求进行操作就行了。选择你的场景,填写好参数,系统就会自动生成配置文件。
构建镜像
如果你不想自己构建,可以跳过,直接阅读下一章节
这是一个标准的前端项目,所以用了老苏一贯的标准 Dockerfile
模板
1 | FROM node:16.16 as build-deps |
构建镜像和容器运行的基本命令如下👇
1 | # 下载代码 |
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 wbsu2003
,找到 wbsu2003/nginx-config
,版本选择 latest
。
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
3388 |
80 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 运行容器 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 nginxconfig |
运行
在浏览器中输入 http://群晖IP:3388
就能看到主界面
网页代码部分指向了 https://www.digitalocean.com/ ,导致一些图标不能正常显示,所以有条件的话最好将
digitalocean.com
加入科学上网的白名单
使用很简单,只要根据场景,填好相应的参数就可以,老苏用常用的反代测试一下,默认是 启用模块化的配置文件
,会生成多个配置文件,诸如:
/etc/nginx/nginx.conf
/etc/nginx/sites-available/laosu.ml.conf
/etc/nginx/nginxconfig.io/letsencrypt.conf
/etc/nginx/nginxconfig.io/security.conf
/etc/nginx/nginxconfig.io/general.conf
/etc/nginx/nginxconfig.io/proxy.conf
对于我们设定的场景,有用的部分是 proxy.conf
看起来似乎有点用,因为可以解决常规场景下的应用,但似乎又没有用,因为对我们遇到的截端口等特殊场景似乎无能为力
其实扯了一堆有的没的,还是因为老苏不会用而已 😂
参考文档
digitalocean/nginxconfig.io: ⚙️ NGINX config generator on steroids 💉
地址:https://github.com/digitalocean/nginxconfig.io