ae43ffe34089cb466d00168a3ad71b813f70103f
Ghost's fresh-DB first boot runs a full schema migration (dozens of CREATE
TABLEs, each a separate MySQL round-trip; ~6-9min on a small/slow node). The
1m start_period + 10x30s retries (~6min grace) is too tight there: swarm marks
the still-migrating task unhealthy and kills it mid-migration, leaving a stale
migrations_lock row so every later task deadlocks (MigrationsAreLockedError).
start_period only widens the startup grace window: a healthy check still marks
the task healthy immediately, so fast hosts are unaffected. It cannot be exposed
as an env var (abra validates the literal compose 'duration' format BEFORE env
substitution, rejecting ${VAR} / "${VAR:-1m}" with FATA 'Does not match format
duration'), so a literal bump is the only way to widen it.
ghost
Node.js CMS for professional publishing (headless possible).
- Category: Apps
- Status: 3, stable
- Image:
ghost, 4, upstream - Healthcheck: Yes
- Backups: Yes
- Email: Yes
- Tests: No
- SSO: N/A
Basic usage
- Set up Docker Swarm and
abra - Deploy
coop-cloud/traefik abra app new ${REPO_NAME} --secrets(optionally with--passif you'd like to save secrets inpass)abra app config YOURAPPDOMAIN- be sure to change$DOMAINto something that resolves to your Docker swarm box, and configure mail if you intend to invite anyone else to the siteabra app deploy YOURAPPDOMAIN- Open the configured domain in your browser to finish set-up
Further configuration
Matrix-Synapse configuration
If you want to use Ghost on a top-level-domain which you want to use as matrix server name as well, just uncomment the respective section in YOURAPPDOMAIN.env and insert your MATRIX_DOMAIN
Description
Languages
Shell
100%