diff --git a/cc-ci-plan/upstream/ghost.md b/cc-ci-plan/upstream/ghost.md new file mode 100644 index 0000000..762e836 --- /dev/null +++ b/cc-ci-plan/upstream/ghost.md @@ -0,0 +1,12 @@ +# Upstream sources — ghost + +| service | image | source repo | releases / changelog | +|---------|-------|-------------|----------------------| +| app | ghost | https://github.com/TryGhost/Ghost | https://github.com/TryGhost/Ghost/releases | +| db | mysql | https://github.com/mysql/mysql-server | https://dev.mysql.com/doc/relnotes/mysql/8.4/en/ | + +## Standing notes +- Ghost 6.x stores ALL content in MySQL (`database__client: mysql`), NOT sqlite. Marker/test rows live in the `ghost` DB. +- MySQL 8.0 → 8.4 (LTS): no application-level migrations needed for Ghost's usage. Default value changes are internal to InnoDB (e.g. `innodb_io_capacity` 200→10000, `innodb_flush_method` fsync→O_DIRECT). The `ci_marker` table and Ghost schema survive the upgrade intact. +- The recipe ships a literal `start_period: 15m` on both `app` and `db` healthchecks (added in recipe PR #1) to handle cc-ci's slow first-boot MySQL schema migration (~6-15 min). The `compose.ccci.yml` overlay mirrors this for the upgrade-tier BASE deploy. +- Ghost 6.x Docker images use the `-alpine` variant; pin to `X.Y.Z-alpine` (not `X.Y.Z-alpine3.NN`) for simplicity.