Installare Supabase con Docker: dettagli da conoscere

L'installazione di Supabase tramite Docker è illustrata in dettaglio nella documentazione ufficiale. Tuttavia, alcuni dettagli andrebbero compresi meglio per poter effettuare un'installazione senza intoppi.

File necessari

Sulla pagina Self-Hosting with Docker, nella sezione Installing and running Supabase, viene mostrata la procedura in cui si effettua la clonazione della repository GitHub ufficiale come primo passaggio.

In realtà i file necessari per poter installare Supabase in Docker sono solo quelli contenuti nella directory docker. Di conseguenza tutti gli altri file e directory non sono necessari allo scopo che si vuole ottenere e quindi possono essere eliminati.

Chiavi API nel file .env

Nella sezione Generate API keys è presente un modulo per generare le credenziali da inserire nel file .env dell'installazione.

Questa sezione è fondamentale poiché se si lascia inalterato il contenuto del file .env con i dati predefiniti, la connessione alle API tramite client (ad esempio con JavaScript) restituirà un errore di autenticazione su tutti gli endpoint. Ciò avviene perché il pametro JWT Secret, generato e presentato nel modulo, costituisce la chiave crittografica con cui verranno aa loro volta generate le chiavi API.

SMTP e supporto TLS

Supabase restituirà un errore interno se il servizio SMTP che stiamo usando, e di cui abbiamo specificato le informazioni nel file .env, non supporta correttamente TLS.

Quindi se si sta utilizzando un servizio locale (ad esempio Mailpit) per lo sviluppo, occorre fare in modo che il supporto a TLS sia abilitato.

Reinstallazione

Supabase è basato su PostgreSQL. Per effettuare una reinstallazione completa evitando il problema del blocco dei servizi Docker che fanno riferimento al database, occorre eliminare la directory dei dati di PostgreSQL.

Possiamo effettuare questa operazione dal terminale:

cd supabase/docker
sudo rm -rf volumes/db/data

La directory data verrà ricreata da Supabase all'atto dell'esecuzione del comando docker compose up -d.

Conclusione

La documentazione di Supabase è ricca e completa, ma come sempre occorre conoscere dei dettagli acquisibili solo tramite un'esperienza diretta.

Torna su