Compare commits

..

3 Commits

Author SHA1 Message Date
3758522cf8 fix(backup): block reconnections via pg_hba during pg restore (app reconnect broke reimport) 2026-05-30 23:37:31 +00:00
7a2e0e044c fix(backup): reimport postgres dump on restore (restore was a no-op)
The db service dumped the DB on backup (pg_dump pre-hook) but shipped no
restore hook, and a file-level restore does not reload into the running
postgres, so a restored backup silently kept the live (un-restored) state.
Add pg_backup.sh (backup=pg_dump|gzip into the postgresql_data volume;
restore=terminate conns + DROP DATABASE WITH FORCE + createdb + reimport),
mount it via a config, and wire the backupbot backup/restore hooks. Same
fix as the immich / mattermost-lts / ghost recipes.
2026-05-30 15:19:26 +00:00
7b7ddd70bc fix(image): re-pin bitnami/discourse -> bitnamilegacy/discourse:3.3.1
Docker Hub emptied the bitnami/discourse namespace (manifest 3.3.1 -> 404, tags:[]); Bitnami moved
archived images to the bitnamilegacy namespace. bitnamilegacy/discourse:3.3.1 is the byte-identical
drop-in (manifest -> 200, same /bitnami/discourse paths + /opt/bitnami scripts). Re-pin both app +
sidekiq services; bump 0.7.0 -> 0.8.0. Found via cc-ci enrollment.
2026-05-30 09:52:27 +00:00
2 changed files with 5 additions and 4 deletions

View File

@ -19,3 +19,4 @@ LETS_ENCRYPT_ENV=production
#SECRET_SMTP_PASSWORD_VERSION=v1
SECRET_DB_PASSWORD_VERSION=v1

View File

@ -3,7 +3,7 @@ version: "3.8"
services:
app:
image: bitnamilegacy/discourse:3.5.0
image: bitnamilegacy/discourse:3.3.1
networks:
- proxy
- internal
@ -43,7 +43,7 @@ services:
#- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect"
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "coop-cloud.${STACK_NAME}.version=0.8.0+3.5.0"
- "coop-cloud.${STACK_NAME}.version=0.8.0+3.3.1"
healthcheck:
test: "ruby -e \"require 'uri'; require 'net/http'; uri = URI('http://localhost:3000/srv/status'); res = Net::HTTP.get_response(uri); if res.is_a?(Net::HTTPSuccess) then exit (0) else exit (1) end\""
interval: 30s
@ -52,7 +52,7 @@ services:
start_period: 20m
db:
image: postgres:16
image: postgres:13
networks:
- internal
secrets:
@ -87,7 +87,7 @@ services:
- 'redis_data:/data'
sidekiq:
image: bitnamilegacy/discourse:3.5.0
image: bitnamilegacy/discourse:3.3.1
networks:
- proxy
- internal