init: ALiYunManager 基础设施项目 — nginx配置/docker-compose/部署文档
This commit is contained in:
@@ -0,0 +1,160 @@
|
||||
================================================================================
|
||||
阿里云多服务 Docker 部署方案 - 2026年5月14日
|
||||
================================================================================
|
||||
|
||||
一、服务器信息
|
||||
--------------------------------------------------------------------------------
|
||||
公网 IP: 8.136.137.59
|
||||
域名: dxz99wyr.cn
|
||||
系统: Ubuntu 5.15.0-174-generic
|
||||
SSH密钥: D:\003_Project\小程序连接.pem
|
||||
项目路径: /opt/ALiYunManager
|
||||
|
||||
二、架构设计
|
||||
--------------------------------------------------------------------------------
|
||||
阿里云服务器 (8.136.137.59)
|
||||
│
|
||||
beian-nginx (:80) ← 现有,已在运行
|
||||
│
|
||||
├── api-miniapp.dxz99wyr.cn → main-nginx (:8080)
|
||||
│ │
|
||||
│ 主 Nginx (Docker)
|
||||
│ ┌──────────┬──────────┬──────────┐
|
||||
│ │ │ │ │
|
||||
│ resume. miniapp. api-resume. api-miniapp.
|
||||
│ dxz99wyr. dxz99wyr. dxz99wyr.cn dxz99wyr.cn
|
||||
│ cn cn │ │
|
||||
│ (占位) host.docker.
|
||||
│ internal:3000
|
||||
│ │
|
||||
│ quanyixiaozhushou-app
|
||||
│ (小程序后端, 3000端口)
|
||||
│
|
||||
└── /quanyi → 静态页面 (原有服务)
|
||||
|
||||
三、子域名规划
|
||||
--------------------------------------------------------------------------------
|
||||
域名 用途 当前状态
|
||||
─────────────────────────────────────────────────────────
|
||||
resume.dxz99wyr.cn 个人简历网站 占位页面已部署
|
||||
miniapp.dxz99wyr.cn 小程序网站 占位页面已部署
|
||||
api-resume.dxz99wyr.cn 个人简历后台 占位页面已部署
|
||||
api-miniapp.dxz99wyr.cn 小程序后台 已接入真实后端 (3000)
|
||||
|
||||
DNS 解析: 以上4个子域名 A 记录均指向 8.136.137.59
|
||||
|
||||
四、Docker 容器
|
||||
--------------------------------------------------------------------------------
|
||||
容器名 端口映射 说明
|
||||
─────────────────────────────────────────────────────────
|
||||
beian-nginx 80:80, 443:443 现有,80入口
|
||||
quanyixiaozhushou-app 3000:3000 小程序后端
|
||||
quanyixiaozhushou-mongo 27018:27017 MongoDB
|
||||
main-nginx 8080:80, 8443:443 主 Nginx (新)
|
||||
resume-web 80 (内部) 简历网站占位
|
||||
miniapp-web 80 (内部) 小程序网站占位
|
||||
resume-api 80 (内部) 简历后台占位
|
||||
miniapp-api 80 (内部) 小程序后台占位
|
||||
|
||||
Docker 网络: aliyun-app-network (bridge)
|
||||
beian-nginx 在 beian-docker_default 网络
|
||||
|
||||
五、访问链路
|
||||
--------------------------------------------------------------------------------
|
||||
小程序后端:
|
||||
用户 → api-miniapp.dxz99wyr.cn (DNS)
|
||||
→ beian-nginx (:80)
|
||||
→ main-nginx (:8080)
|
||||
→ host.docker.internal:3000 (本地回环)
|
||||
→ quanyixiaozhushou-app (:3000)
|
||||
|
||||
简历网站:
|
||||
用户 → resume.dxz99wyr.cn → beian-nginx (:80) → main-nginx (:8080) → resume-web (:80)
|
||||
|
||||
简历后台:
|
||||
用户 → api-resume.dxz99wyr.cn → beian-nginx (:80) → main-nginx (:8080) → resume-api (:80)
|
||||
|
||||
⚠ 注:beian-nginx 目前只配了 api-miniapp 的中转,
|
||||
其他三个子域名还未配置中转,后续需要补充。
|
||||
|
||||
六、配置文件位置
|
||||
--------------------------------------------------------------------------------
|
||||
项目目录: /opt/ALiYunManager/
|
||||
├── docker-compose.yml 完整部署配置
|
||||
├── docker-compose.main-nginx-only.yml 仅主 Nginx
|
||||
├── docker-compose.override.yml 开发覆盖
|
||||
├── .env / .env.example 环境变量 (端口8080)
|
||||
├── nginx/
|
||||
│ ├── nginx.conf 主 Nginx 核心配置
|
||||
│ └── conf.d/
|
||||
│ ├── resume-web.conf 简历网站反向代理
|
||||
│ ├── miniapp-web.conf 小程序网站反向代理
|
||||
│ ├── resume-api.conf 简历后台反向代理
|
||||
│ ├── miniapp-api.conf 小程序后台反向代理 (→3000)
|
||||
│ ├── ssl-template.conf HTTPS 模板
|
||||
│ └── port-based-example.conf 端口模式示例
|
||||
└── services/
|
||||
├── resume-web/ (前端占位)
|
||||
├── miniapp-web/ (前端占位)
|
||||
├── resume-api/ (后端占位)
|
||||
└── miniapp-api/ (后端占位)
|
||||
|
||||
beian-nginx 配置: /opt/beian-docker/nginx.conf
|
||||
beian-nginx 备份: /opt/beian-docker/nginx.conf.bak
|
||||
|
||||
七、beian-nginx 中转配置要点
|
||||
--------------------------------------------------------------------------------
|
||||
- 添加了 server 块监听 api-miniapp.dxz99wyr.cn
|
||||
- 反向代理到 172.19.0.1:8080 (Docker 网关 = 宿主机)
|
||||
- 保留原有的 default_server 和 /quanyi 路径
|
||||
- master nginx 模板路径: /opt/beian-docker/nginx.conf → /etc/nginx/conf.d/default.conf
|
||||
|
||||
八、端口说明
|
||||
--------------------------------------------------------------------------------
|
||||
端口 开放给外网 用途
|
||||
─────────────────────────────────────
|
||||
22 是 SSH
|
||||
80 是 HTTP 入口 (beian-nginx)
|
||||
443 是 HTTPS 入口 (beian-nginx)
|
||||
3000 否 (已关闭) 小程序后端 (仅本地回环访问)
|
||||
8080 否 主 Nginx (内部)
|
||||
8443 否 主 Nginx HTTPS (内部)
|
||||
|
||||
九、常用命令
|
||||
--------------------------------------------------------------------------------
|
||||
# 部署/管理
|
||||
docker compose up -d 启动所有服务
|
||||
docker compose down 停止所有服务
|
||||
docker compose restart nginx 重启主 Nginx
|
||||
docker compose exec nginx nginx -s reload 重载配置 (不重启)
|
||||
docker compose ps 查看服务状态
|
||||
docker compose logs -f nginx 查看日志
|
||||
|
||||
# beian-nginx
|
||||
docker exec beian-nginx nginx -t 测试配置
|
||||
docker exec beian-nginx nginx -s reload 重载配置
|
||||
|
||||
# 单个服务更新
|
||||
./scripts/update-service.sh resume-web
|
||||
|
||||
十、后续需要完成的工作
|
||||
--------------------------------------------------------------------------------
|
||||
1. [ ] beian-nginx 补充剩下 3 个子域名的中转配置
|
||||
(resume, miniapp, api-resume)
|
||||
2. [ ] 各服务替换占位页面为真实代码
|
||||
3. [ ] 配置 HTTPS (Certbot + SSL证书)
|
||||
4. [ ] 申请 SSL 证书覆盖 4 个子域名
|
||||
5. [ ] 配置日志轮转 (logrotate)
|
||||
6. [ ] 阿里云 DNS: 确认 4 个子域名 A 记录都已添加
|
||||
|
||||
十一、重要提醒
|
||||
--------------------------------------------------------------------------------
|
||||
- 主 Nginx (main-nginx) 当前在 8080 端口,不对外网开放
|
||||
- 3000 端口已关闭外网访问,只走本地回环,更安全
|
||||
- 各服务容器内部始终用 80 端口,添加新服务不需要改端口
|
||||
- beian-nginx 配置修改前记得备份 (已有 .bak)
|
||||
- 所有脚本已添加执行权限
|
||||
|
||||
================================================================================
|
||||
记录时间: 2026-05-14 21:35
|
||||
================================================================================
|
||||
Reference in New Issue
Block a user