强大的Nginx配置生成器

强大的Nginx配置生成器


本文折腾于 9 月中旬;

老苏虽然用过很多次 Nginx ,但是对 nginx 并不熟悉,基本上是每次要用的时候才会去搜索解决方案,所以一直在找一个配置工具,Nginx Config 虽然不能完全满足老苏的需求,但也可以作为参考之用。

什么是  Nginx Config ?

Nginx Config 是一款可以一键生成 Nginx 配置的神器,相当给力。支持反向代理、HTTPSHTTP/2IPv6, 缓存、WordPressCDNNode.jsPython (Django) 服务器等等。

如果你不想自己安装,只需要打开网站:https://nginxconfig.io,按照自己的需求进行操作就行了。选择你的场景,填写好参数,系统就会自动生成配置文件。

构建镜像

如果你不想自己构建,可以跳过,直接阅读下一章节

这是一个标准的前端项目,所以用了老苏一贯的标准 Dockerfile 模板

FROM node:16.16 as build-deps
MAINTAINER laosu<wbsu2003@gmail.com>
    
WORKDIR /app
COPY . ./
RUN npm install
RUN npm run build
  
FROM nginx:1.12-alpine
COPY --from=build-deps /app/dist /usr/share/nginx/html
    
EXPOSE 80
CMD ["nginx""-g""daemon off;"]

构建镜像和容器运行的基本命令如下👇

# 下载代码
git clone https://github.com/digitalocean/nginxconfig.io.git
  
# 或者加个代理  
git clone https://ghproxy.com/github.com/digitalocean/nginxconfig.io.git
  
# 进入目录  
cd nginxconfig.io

# 将 Dockerfile 放入当前目录
  
# 构建镜像
docker build -t wbsu2003/nginx-config:v1 .

# 运行容器
docker run -d 
   --name nginxconfig 
   -p 3388:80 
   wbsu2003/nginx-config:v1

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 wbsu2003 ,找到 wbsu2003/nginx-config,版本选择 latest

强大的Nginx配置生成器

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3388 80

强大的Nginx配置生成器

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 运行容器
docker run -d 
   --restart unless-stopped 
   --name nginxconfig 
   -p 3388:80 
   wbsu2003/nginx-config

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  nginxconfig:
    image: wbsu2003/nginx-config
    container_name: nginxconfig
 restart: unless-stopped
    ports:
      - 3388:80

然后执行下面的命令

# 新建文件夹 nginxconfig 
mkdir -p /volume2/docker/nginxconfig

# 进入 nginxconfig 目录
cd /volume2/docker/nginxconfig

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3388 就能看到主界面

网页代码部分指向了 https://www.digitalocean.com/ ,导致一些图标不能正常显示,所以有条件的话最好将 digitalocean.com 加入科学上网的白名单

强大的Nginx配置生成器

使用很简单,只要根据场景,填好相应的参数就可以,老苏用常用的反代测试一下,默认是 启用模块化的配置文件,会生成多个配置文件,诸如:

  • /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

强大的Nginx配置生成器

看起来似乎有点用,因为可以解决常规场景下的应用,但似乎又没有用,因为对我们遇到的截端口等特殊场景似乎无能为力

其实扯了一堆有的没的,还是因为老苏不会用而已 😂

参考文档

digitalocean/nginxconfig.io: ⚙️ NGINX config generator on steroids 💉
地址:https://github.com/digitalocean/nginxconfig.io

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

原文始发于微信公众号(各种折腾):强大的Nginx配置生成器

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/55413.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!