Hi everybody,
I am currently meeting a problem with the cache container I got the following error from redis :
1:M 06 Mar 2026 18:23:08.534 # Background saving error
1:M 06 Mar 2026 18:23:14.071 * 1 changes in 3600 seconds. Saving...
1:M 06 Mar 2026 18:23:14.083 * Background saving started by pid 143334
143334:C 06 Mar 2026 18:23:15.008 # Write error while saving DB to the disk(rdbSaveRio): No space left on device
I verified disk space and everything is alright (note that redis is in /opt/wger) :
workout@Workout:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 392M 1.7M 390M 1% /run
/dev/vda3 18G 4.2G 13G 25% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
efivarfs 256K 23K 234K 9% /sys/firmware/efi/efivars
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service
/dev/vdb 99G 33G 62G 36% /opt/wger
/dev/vda2 969M 9.4M 960M 1% /boot/efi
tmpfs 2.0G 0 2.0G 0% /tmp
tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service
tmpfs 1.0M 0 1.0M 0% /run/credentials/serial-getty@ttyAMA0.service
tmpfs 392M 16K 392M 1% /run/user/0
I checked my CPU and RAM and no problem :
My current config for docker compose (sry for the syntax copy paste not workign well) :
services:
web:
image: docker.io/wger/server:latest
depends_on:
db:
condition: service_healthy
cache:
condition: service_healthy
env_file:
- ./config/prod.env
volumes:
- ./static:/home/wger/static
- ./media:/home/wger/media
expose:
- 8000
logging:
driver: json-file
options:
max-size: 5m
max-file: 5
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8000"]
interval: 10s
timeout: 5s
start_period: 300s
retries: 5
restart: unless-stopped
nginx:
image: docker.io/nginx:stable
depends_on:
- web
volumes:
- ./config/nginx.conf:/etc/nginx/conf.d/default.conf
- ./static:/wger/static:ro
- ./media:/wger/media:ro
ports:
- "80:80"
healthcheck:
test: ["CMD", "service", "nginx", "status"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
restart: unless-stopped
db:
image: docker.io/postgres:15-alpine
environment:
- POSTGRES_USER=wger
- POSTGRES_PASSWORD=CENSURED
- POSTGRES_DB=wger
- TZ=Europe/Berlin
volumes:
- ./postgres-data:/var/lib/postgresql/data/
expose:
- 5432
logging:
driver: json-file
options:
max-size: 5m
max-file: 5
healthcheck:
test: ["CMD", "pg_isready", "-U", "wger" ]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
restart: unless-stopped
cache:
image: docker.io/redis
expose:
- 6379
logging:
driver: json-file
options:
max-size: 5m
max-file: 5
volumes:
- ./config/redis.conf:/usr/local/etc/redis/redis.conf
- ./redis-data:/data
command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
healthcheck:
test: redis-cli ping
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
restart: unless-stopped
# You probably want to limit the memory usage of the cache, otherwise it might
# hog all the available memory. Remove or change according to your needs.
#mem_limit: 5gb
celery_worker:
image: docker.io/wger/server:latest
command: /start-worker
env_file:
- ./config/prod.env
volumes:
- ./media:/home/wger/media
logging:
driver: json-file
options:
max-size: 5m
max-file: 5
depends_on:
web:
condition: service_healthy
healthcheck:
test: ["CMD", "celery", "-A", "wger", "inspect", "ping"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
restart: unless-stopped
celery_beat:
image: docker.io/wger/server:latest
command: /start-beat
logging:
driver: json-file
options:
max-size: 5m
max-file: 5
volumes:
- ./celery-beat:/home/wger/beat/
env_file:
- ./config/prod.env
depends_on:
celery_worker:
condition: service_healthy
restart: unless-stopped
celery_flower:
image: wger/server:latest
container_name: wger_celery_flower
command: /start-flower
env_file:
- ./config/prod.env
ports:
- "5555:5555"
healthcheck:
test: wget --no-verbose --tries=1 http://localhost:5555/healthcheck
interval: 10s
timeout: 5s
retries: 5
depends_on:
celery_worker:
condition: service_healthy
restart: unless-stopped
volumes:
postgres-data:
celery-beat:
redis-data:
# Heads up, if you remove these volumes and use folders directly you need to chown them
# to the UID and GID 1000 even if it doesn't exist on your system. Also, they should
# be readable by everyone.
#
# https://wger.readthedocs.io/en/latest/production/docker.html#missing-static-files
media:
static:
networks:
default:
name: wger_network
If i check space in the container directly there is no problem :
Filesystem Size Used Avail Use% Mounted on
overlay 18G 4.2G 13G 25% /
tmpfs 64M 0 64M 0% /dev
shm 64M 0 64M 0% /dev/shm
/dev/vdb 99G 33G 62G 36% /data
/dev/vda3 18G 4.2G 13G 25% /etc/hosts
tmpfs 2.0G 0 2.0G 0% /proc/acpi
tmpfs 2.0G 0 2.0G 0% /sys/firmware
I think the cache is causing me some problem with using wger because I can't event do research about food, and many times by adding measurement I got error and he don't get add and sometime it is added.
If somebody meet the problem I would like your advice.
Have a nice day guys.
Hi everybody,
I am currently meeting a problem with the cache container I got the following error from redis :
I verified disk space and everything is alright (note that redis is in /opt/wger) :
I checked my CPU and RAM and no problem :
My current config for docker compose (sry for the syntax copy paste not workign well) :
If i check space in the container directly there is no problem :
I think the cache is causing me some problem with using wger because I can't event do research about food, and many times by adding measurement I got error and he don't get add and sometime it is added.
If somebody meet the problem I would like your advice.
Have a nice day guys.