将原有 Spring Boot 单体博客项目改造为 Docker 容器化部署,
配套 Nginx 反向代理 + SSL + 日志收集,实现一键部署、快速迁移。
【技术栈】
• 容器化:Dockerfile 构建 Spring Boot 镜像(多阶段构建,jar→jre 瘦身),
docker-compose.yml 编排 5 个服务:app / mysql / redis / nginx / rocketmq
• 反向代理:Nginx upstream 负载均衡(模拟多实例),
location 规则转发 API 请求,静态资源直出,gzip 压缩开启
• HTTPS:Let's Encrypt 免费证书 + Nginx SSL 配置,HTTP 强制跳转 HTTPS
• Linux:CentOS 7 防火墙 firewalld 配置、Docker 开机自启、
journalctl 查容器日志、crontab 定时备份 MySQL 数据
• 监控:docker stats 看资源占用,Nginx access.log 分析请求量
【架构图】
用户 → Nginx(80/443) → Spring Boot App(8080) → MySQL / Redis
↓
RocketMQ(异步任务)
【解决的问题】
• 部署时间从 2 小时手工配置 → docker-compose up 3 分钟拉起全套环境
• 环境一致性:本地 Docker 跑通 = 服务器 Docker 跑通,零差异
• 迁移方便:新服务器装 Docker → git pull → docker-compose up,10 分钟完成迁移
【交付成果】
docker-compose.yml + 各服务 Dockerfile + Nginx 配置 + 部署文档 + 线上 Demo
需求方专属客服,免费梳理匹配