1.8 KiB
1.8 KiB
nginx-ai
ash 服务器(token.tlyq.ai)的 nginx 反向代理配置,Docker 部署。
架构
Internet (3 Mbps)
│
▼
nginx:alpine (:80, :443)
├── token.tlyq.ai → proxy_pass → host.docker.internal:3000 (Go 后端)
├── token.tulingyinqing.com → proxy_pass → host.docker.internal:3000
└── *.tlyq.ai (default) → 阿里云 WAF 阻断
目录结构
nginx-ai/
├── docker-compose.yml # 容器定义(nginx:alpine)
├── nginx.conf # 主配置(worker / events / http / proxy / ssl)
├── conf.d/
│ ├── token-tlyq.conf # token.tlyq.ai server block(HTTP/2)
│ ├── token-tuling.conf # token.tulingyinqing.com server block
│ └── letsencrypt.conf # HTTP→HTTPS 跳转 + acme-challenge
└── README.md
部署
git clone git@git.tlyq.ai:gaoxiaopei/nginx-ai.git /opt/nginx-ai
cd /opt/nginx-ai
docker compose up -d # 启动
docker compose restart # 重启
docker compose logs -f # 查看日志
证书
证书目录 /etc/nginx/certs/tlyq.ai/ 不在本仓库(.gitignore 已排除)。
新服务器部署时需:
- 从旧服务器复制证书目录,或
- 重新申请 Let's Encrypt 证书(
certbot certonly --nginx -d *.tlyq.ai)
配置要点(2026-07-14 优化)
| 配置项 | 优化前 | 优化后 |
|---|---|---|
worker_processes |
未设置(默认 1) | auto(2 workers) |
worker_connections |
1024 | 4096 |
multi_accept |
未设置 | on |
| HTTP/2 | 未启用 | http2 on; |
proxy_buffering |
隐式默认 | 显式配置 |
修改配置后重载
docker compose restart
# 或热重载(不中断服务):
docker exec nginx-ai nginx -t
docker exec nginx-ai nginx -s reload