================================================================================ 阿里云多服务 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 ================================================================================