# PocketBase locale per lo sviluppo (sostituisce "npx supabase start" solo in locale, # vedi docs/PORTABILITA.md e la voce DD relativa). La produzione resta su Supabase. # # Uso: # docker compose -f docker-compose.pocketbase.yml up -d # avvia # docker compose -f docker-compose.pocketbase.yml down # ferma # docker compose -f docker-compose.pocketbase.yml down -v # ferma e azzera i dati locali # # Dashboard admin: http://127.0.0.1:8090/_/ # API: http://127.0.0.1:8090/api/ services: pocketbase: image: ghcr.io/muchobien/pocketbase:latest container_name: crapp-pocketbase restart: unless-stopped # --automigrate=0: le modifiche fatte da dashboard (es. abilitare un provider OAuth2, # con relativo client secret) NON devono finire come file di migration versionati in # git. Le migration restano solo quelle scritte a mano in pocketbase/pb_migrations/. command: ["--automigrate=0"] env_file: - .env environment: # L'immagine crea il superuser da queste variabili a ogni avvio (idempotente): # sopravvive a "npm run pocketbase:reset" senza passaggi manuali. PB_ADMIN_EMAIL: ${POCKETBASE_SUPERUSER_EMAIL:-} PB_ADMIN_PASSWORD: ${POCKETBASE_SUPERUSER_PASSWORD:-} ports: - "8090:8090" volumes: - ./pocketbase/pb_data:/pb_data - ./pocketbase/pb_migrations:/pb_migrations - ./pocketbase/pb_hooks:/pb_hooks healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://127.0.0.1:8090/api/health"] interval: 5s timeout: 3s retries: 5