自动化里程碑
checkpoint-automation;CI 与脚本。
自动化里程碑
checkpoint-automation 出现在你学完 Ansible 之后:把曾经在 EC2 上 SSH 手工安装 Node、Git、PostgreSQL、拉代码、启服务 的步骤,写成 可重复执行的 Playbook。这与 github-actions-essentials(仓库内 CI)互补——Ansible 管 目标机配置与发布,Actions 管 构建与触发。全栈基础设施闭环见 fsm-infra 与 /roadmaps/full-stack checkpoint-infrastructure。
学习目标
- 对照 /roadmaps/full-stack checkpoint-automation,编写 Ansible playbook,在新 EC2 上 无需手工 SSH 装依赖 即可跑通应用
- 区分 配置管理(Ansible)、镜像(docker-essentials)、流水线(github-actions-essentials)的职责
- 将 playbook 与 fullstack-roadmap automation 节点、spring-boot-essentials 打包产物(jar)部署方式对齐
路线图任务回顾
Playbook 应覆盖(按你的栈裁剪):
| 步骤 | Ansible 模块示例 |
|---|---|
| 安装运行时 | apt / yum 装 Node 或 Java |
| 安装 Git、DB 客户端 | package |
| 创建应用用户与目录 | user、file |
| 部署代码或 jar | git / copy / template |
| 配置 systemd 或 pm2 | systemd、command |
| 环境变量与密钥 | template + Ansible Vault |
示例结构
deploy/
├── ansible.cfg
├── inventory/
│ └── staging.ini
├── group_vars/
│ └── all.yml
└── playbooks/
└── app.yml
app.yml 核心思路:先 handlers 重启服务,再 tasks 装包、同步 artifact、渲染 application.yml 或 .env。
与 Docker / CI 的配合
现代团队常 Actions 构建镜像 → 推 registry → Ansible 或 SSH 拉镜像重启。若仍用 jar 部署:
GitHub Actions: mvn package → scp jar
Ansible: 安装 JRE、拷贝 jar、systemd unit、启动