Aggiungo CMS Strapi self-hosted per gestire rosa, classifica e storico partite

Introduce lo stack Strapi dockerizzato (infra/strapi/), sullo stesso Postgres
dello stack Supabase con un database logico separato, dietro Caddy su /cms/*.
L'editing dei dati avviene solo nel pannello admin nativo di Strapi.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-28 15:39:20 +02:00
co-authored by Claude Sonnet 5
parent 3fdbfefa62
commit 3f61b32219
43 changed files with 22425 additions and 9 deletions
+38
View File
@@ -0,0 +1,38 @@
# CMS admin (rosa, classifica, storico partite, scout finalizzato) per CrAPP.
# Si appoggia allo stesso Postgres dello stack Supabase self-hosted (infra/supabase/docker/,
# progetto compose "supabase", rete di default "supabase_default" — verifica con
# `docker network ls` se il nome differisce) con un database logico separato ("strapi"), invece
# di un secondo container Postgres: stesso isolamento dei dati, metà del carico su hardware
# limitato (es. Raspberry Pi 4).
#
# Uso:
# cp .env.production.example .env # compila i secret, vedi README "Produzione"
# docker compose up -d
#
# Crea prima il database logico (una tantum, vedi README):
# docker exec -i supabase-db psql -U postgres -c "CREATE DATABASE strapi;"
# docker exec -i supabase-db psql -U postgres -c "CREATE USER strapi WITH PASSWORD '...';"
# docker exec -i supabase-db psql -U postgres -c "GRANT ALL PRIVILEGES ON DATABASE strapi TO strapi;"
services:
strapi:
build: .
container_name: crapp-strapi
restart: unless-stopped
env_file:
- .env
ports:
# Solo locale, come api-gw dello stack Supabase — dietro il reverse proxy TLS (Caddyfile).
- "127.0.0.1:1337:1337"
volumes:
- strapi-uploads:/opt/app/public/uploads
networks:
- supabase
networks:
supabase:
name: supabase_default
external: true
volumes:
strapi-uploads: