Files
cc-ci-orchestrator/cc-ci-plan/upstream/discourse.md

2.3 KiB

Upstream sources — discourse

service image source repo releases / changelog
app discourse/discourse (official, was bitnamilegacy/discourse) https://github.com/discourse/discourse https://releases.discourse.org/ (per-version: https://releases.discourse.org/changelog/v/)
db discourse/postgres (pgvector + auto-upgrade layer, was pgvector/pgvector) https://github.com/discourse/discourse-postgres https://github.com/discourse/discourse-postgres (tags: pg13..pg18, latest; no semver — pg<MAJOR>)
redis redis https://github.com/redis/redis https://raw.githubusercontent.com/redis/redis/8.0/00-RELEASENOTES

Standing notes

  • The recipe switched from bitnamilegacy/discourse to the official discourse/discourse image in v1.0.0+3.5.3 (merged upstream 2026-06, PR #16 discourse-official). sidekiq now runs INSIDE the app container (no separate sidekiq service). The old bitnamilegacy path is dead; bitnamilegacy 9.x tags are Helm-chart OCI artifacts, not runnable images.
  • Discourse switched from semver (3.x) to calver (YYYY.M.x) starting v2026.1.0 (2026-01-28). v2026.1.0 is the first ESR (Extended Support Release), replacing the old "stable" branch. Sites on 3.5.x → 2026.1.x on next upgrade (normal, supported path; Rails migrations run automatically on boot via the official image). Release notes: https://releases.discourse.org/ . ESR line (2026.1.x) gets ~8 months support; monthly release channel gets ~2 months; latest is continuous. The esr Docker tag tracks the current ESR. Target the ESR line for stable deployments.
  • discourse/postgres tags are pg<MAJOR> (pg13..pg18), non-semver — abra can't parse them. Check Docker Hub directly: https://hub.docker.com/r/discourse/postgres/tags . pg18 is the newest (2026-07-01); no pg19 yet. The image auto-upgrades an older cluster in place on boot (pg_upgrade into versioned PGDATA); no manual dump/restore needed (the old "Welcome to hell" procedure is superseded for this image).
  • Redis 8.0 GA supports upgrade from 7.x data files. Discourse uses Redis only as a cache/queue (Sidekiq) with no persistence modules. Redis 8.0 integrates RediSearch/RedisJSON/etc. as built-ins; discourse does not use those modules so this is transparent.