reddit-media-collector/docker-compose.synology.yml
Richard Nixon c0dffb39a4 fix(compose): mount config.yaml writable so UI can persist changes
The UI mutates /app/config.yaml on every add/remove of subreddits, users
or blacklist entries. With the :ro flag the write fails with OSError and
the route returns 500 (the frontend then shows "Erro de conexão"
because the plain-text 500 body is not JSON-parseable).

Drop :ro from both compose files and from the README volumes table.
2026-05-17 17:12:01 +01:00

32 lines
1.5 KiB
YAML

# Compose para deploy no Synology DSM via Container Manager.
# Puxa a imagem pré-construída do GHCR (sem build local no NAS).
# Antes de subir, crie as pastas no NAS:
# mkdir -p /volume1/docker/reddit-media-collector/{downloads,data}
# cp config.yaml /volume1/docker/reddit-media-collector/config.yaml
services:
collector:
image: ghcr.io/richardnixondev/reddit-media-collector:latest
container_name: reddit-media-collector
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- /volume1/docker/reddit-media-collector/downloads:/app/downloads
- /volume1/docker/reddit-media-collector/data:/app/data
# NOTE: config.yaml must be writable — the UI mutates it on add/remove
# of subreddits, users and blacklist entries. Mounting :ro causes 500.
- /volume1/docker/reddit-media-collector/config.yaml:/app/config.yaml
environment:
- RMC_TIMEZONE=America/Sao_Paulo
- RMC_DOWNLOAD_DIR=/app/downloads
- RMC_DB_PATH=/app/data/media.db
- RMC_SCHEDULER_DB=/app/data/scheduler.db
- RMC_SCHEDULER_CONFIG=/app/data/scheduler_config.yaml
# Ative HTTP Basic Auth se for expor pela internet (via Reverse Proxy DSM):
# - RMC_AUTH_USER=admin
# - RMC_AUTH_PASS=trocar-isto
# Se o DSM rodar o container como user diferente e der erro de permissão
# nas pastas, descomente abaixo apontando para o UID:GID dono de
# /volume1/docker/reddit-media-collector (descubra com `ls -ln`):
# user: "1026:100"