上线运维篇:从云服务器到可维护的网站
从服务器、安全组、Nginx、域名、HTTPS、配置、日志、备份和验收建立上线运维路线。
知识目录Docker 从入门到生产部署9 / 14
动手前先知道
这篇文章对应的真实任务是:从服务器、安全组、Nginx、域名、HTTPS、配置、日志、备份和验收建立上线运维路线。
第一次阅读先弄清“为什么需要这一步、它改变了哪个运行对象、失败时去哪里检查”,再执行命令。命令可以查,运行模型和排障路径才是长期能力。
这一章进入上线运维。前面的内容解决“容器怎么跑”,这一章解决“用户怎么稳定访问、出问题怎么处理、数据怎么保护”。
上线不是把项目丢到服务器上就结束。真正可用的网站至少要考虑入口、域名、HTTPS、安全组、配置、日志、备份、更新、回滚。
上线链路总览
小艾知行录的上线链路可以这样理解:
代码仓库
↓
服务器拉取代码
↓
构建 web/api 镜像
↓
docker compose 启动服务
↓
Nginx 暴露入口
↓
域名解析到服务器
↓
HTTPS 证书生效
↓
健康检查和验收
上线前必须确认
正式上线前至少确认:
- 服务器安全组只开放必要端口。
- 数据库密码、JWT 密钥、COS Key 已换成生产配置。
.env.production不提交到 Git。- Nginx 反向代理路径正确。
- 管理后台不能被弱密码保护。
- 数据库有备份方案。
- 图片上传到 COS 正常。
- 搜索、文章、专题、标签、分类都正常。
生产环境不追求复杂
个人博客早期不需要复杂平台。
推荐形态是:
一台云服务器
├─ Nginx 容器
├─ Web 容器
├─ API 容器
└─ MySQL 容器或云数据库
如果后面访问量变大,再升级服务器、拆数据库、加 CDN、做对象存储加速。
先把简单链路做稳,比一开始堆复杂组件更重要。
上线后怎么验收
上线后不要只打开首页。
要按真实用户路径验收:
- 首页是否正常。
- 专题页是否正常。
- 文章详情是否正常。
- 全站搜索是否正常。
- 管理端能否登录。
- 能否发布文章。
- 能否上传图片。
- Jarvis 助手是否正常。
- 移动端布局是否正常。
- Nginx 日志是否有明显错误。
验收完再宣布“上线完成”。
上线运维的核心思想
上线运维不是一次性动作,而是一套习惯:
- 每次上线有版本。
- 每次变更可追踪。
- 每次发布前有备份。
- 每次故障先看日志。
- 每次修复后复盘原因。
个人项目越早养成这个习惯,后期越轻松。
JARVIS · 当前文章
有哪里没看懂?可以只问这篇。
Jarvis 会限定在《上线运维篇:从云服务器到可维护的网站》及其公开关联内容中检索,并把引用定位回原文章节。