summaryrefslogtreecommitdiff
path: root/Docker
diff options
context:
space:
mode:
authorGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2025-11-17 00:27:24 +0100
committerGravatar GitHub <noreply@github.com> 2025-11-17 00:27:24 +0100
commit9c8e9a8b874b50f63c061390ff817518965b0a88 (patch)
tree45a9c5ac848c6a458c475d39435f800e6c8ee4a5 /Docker
parentb9abe706902c666d85cf60eb828a72c4f3062297 (diff)
Fix Docker for PostgreSQL (#8224)
Better fix instead of https://github.com/FreshRSS/FreshRSS/pull/8216 Based on error message: Error: in 18+, these Docker images are configured to store database data in a format which is compatible with "pg_ctlcluster" (specifically, using major-version-specific directory names). This better reflects how PostgreSQL itself works, and how upgrades are to be performed. See also https://github.com/docker-library/postgres/pull/1259 Counter to that, there appears to be PostgreSQL data in: /var/lib/postgresql/data (unused mount/volume) This is usually the result of upgrading the Docker image without upgrading the underlying database using "pg_upgrade" (which requires both versions). The suggested container configuration for 18+ is to place a single mount at /var/lib/postgresql which will then place PostgreSQL data in a subdirectory, allowing usage of "pg_upgrade --link" without mount point boundary issues. See https://github.com/docker-library/postgres/issues/37 for a (long) discussion around this process, and suggestions for how to do so.
Diffstat (limited to 'Docker')
-rw-r--r--Docker/README.md2
-rw-r--r--Docker/freshrss/docker-compose-db.yml2
2 files changed, 2 insertions, 2 deletions
diff --git a/Docker/README.md b/Docker/README.md
index a641921c1..c76af5f4f 100644
--- a/Docker/README.md
+++ b/Docker/README.md
@@ -188,7 +188,7 @@ docker network connect freshrss-network postgres
# Otherwise, start a new PostgreSQL instance, remembering to change the passwords:
docker run -d --restart unless-stopped --log-opt max-size=10m \
- -v pgsql_data:/var/lib/postgresql/data \
+ -v pgsql_data:/var/lib/postgresql \
-e POSTGRES_DB=freshrss \
-e POSTGRES_USER=freshrss \
-e POSTGRES_PASSWORD=freshrss \
diff --git a/Docker/freshrss/docker-compose-db.yml b/Docker/freshrss/docker-compose-db.yml
index a824f93dc..85fb6f7c0 100644
--- a/Docker/freshrss/docker-compose-db.yml
+++ b/Docker/freshrss/docker-compose-db.yml
@@ -11,7 +11,7 @@ services:
options:
max-size: 10m
volumes:
- - db:/var/lib/postgresql/18/docker
+ - db:/var/lib/postgresql
environment:
POSTGRES_DB: ${DB_BASE:-freshrss}
POSTGRES_USER: ${DB_USER:-freshrss}