feat(deploy): add docker app+mysql stack for coolify

This commit is contained in:
Dwindi Ramadhana
2026-02-04 21:05:59 +07:00
parent 0c45435db9
commit 0d5e1a4aa1
6 changed files with 182 additions and 0 deletions

View File

@@ -149,6 +149,16 @@
- [ ] Run parity QA on tone handling, insert/copy behavior, and API limits.
- [ ] Prepare migration + rollback checklist (DNS/host switch, redirects, monitoring).
### Phase 10 - Deployment hardening (Coolify/ops)
- [x] Define single-stack deployment template (app + mysql) in the same destination/network.
- [x] Add startup sequence for server deployment:
- wait for DB readiness
- run migrations automatically (idempotent)
- start web server
- [ ] Keep local/dev simple with SQLite profile; keep staging/prod profile on MySQL.
- [ ] Add deployment runbook with minimum required env vars and health verification steps.
- [ ] Add post-deploy smoke checks (`/`, `/v1/health`, `/v1/emojis`, `/robots.txt`, `/sitemap.xml`).
## Recent implementation update
- Added new API endpoints in rebuild:
@@ -179,6 +189,10 @@
- `/sitemap.xml` route generated from dataset
- meta/OG/Twitter fields in shared layout
- JSON-LD blocks on `/pricing`, `/support`, `/api-docs`, and emoji detail page
- Added Docker deployment baseline for one-pack deployment:
- `docker-compose.yml` (Laravel app + MySQL 8 with healthcheck + persistent volumes)
- `app/Dockerfile` (build Vite assets + Composer deps, serve via Apache)
- `app/docker/entrypoint.sh` (DB wait + auto-migrate + startup)
## Live audit highlights (reference)