Gestire il server locale
Usa yarn twenty docker:* per controllare il container Twenty locale:
| Comando | Cosa fa |
|---|
yarn twenty docker:start | Avvia il server (scarica l’immagine se necessario) |
yarn twenty docker:start 2.2.0 | Avvia una versione specifica del server |
yarn twenty docker:start --port 3030 | Avvia su una porta personalizzata |
yarn twenty docker:stop | Arresta il server (conserva i dati) |
yarn twenty docker:status | Mostra URL, versione e credenziali di accesso |
yarn twenty docker:logs | Trasmetti in streaming i log del server |
yarn twenty docker:reset | Cancella i dati e riparti da zero |
yarn twenty docker:upgrade | Scarica l’ultima immagine twenty-app-dev |
yarn twenty docker:upgrade 2.2.0 | Aggiorna a una versione specifica |
I dati persistono tra i riavvii in due volumi Docker (twenty-app-dev-data per PostgreSQL, twenty-app-dev-storage per i file). Usa reset per cancellare tutto.
Blocco della versione del server
Quando non viene passata alcuna versione, docker:start risolve la versione dall’intervallo engines.twenty della tua app in package.json, lo stesso intervallo rispetto al quale il server effettua la convalida quando la tua app viene installata. Avvia l’immagine twenty-app-dev più recente pubblicata che soddisfa l’intervallo, ricorrendo a latest quando il campo è assente o nessuna versione pubblicata corrisponde:
{
"engines": {
"twenty": ">=2.2.0"
}
}
Passa esplicitamente una versione per ignorare l’intervallo per una singola esecuzione: yarn twenty docker:start 2.3.0. Se un container esiste già con una versione diversa, docker:start lo aggiorna sul posto (ricreando il container ma preservando i volumi dei tuoi dati).
Aggiornamento dell’immagine del server
yarn twenty docker:upgrade scarica l’ultima immagine, confronta i digest e ricrea il container solo se è cambiato qualcosa. I volumi vengono preservati — viene sostituito solo il container. Se è stata scaricata una nuova immagine e il container era in esecuzione, l’upgrade avvia automaticamente un nuovo container; esegui poi yarn twenty docker:start per attendere che diventi operativo.
yarn twenty docker:upgrade # Latest
yarn twenty docker:upgrade 2.2.0 # Specific version
Verifica la versione in esecuzione con yarn twenty docker:status (mostra APP_VERSION incorporata nel container).
Esecuzione di un’istanza di test parallela
Passa --test a qualsiasi comando docker:* per gestire una seconda istanza completamente isolata — utile per test di integrazione o per sperimentare senza toccare i tuoi dati di sviluppo principali:
| Comando | Cosa fa |
|---|
yarn twenty docker:start --test | Avvia l’istanza di test (per impostazione predefinita usa la porta 2021) |
yarn twenty docker:stop --test | Arrestala |
yarn twenty docker:status --test | Mostra il suo stato |
yarn twenty docker:logs --test | Trasmetti in streaming i suoi log |
yarn twenty docker:reset --test | Cancella i suoi dati |
yarn twenty docker:upgrade --test | Aggiorna la sua immagine |
L’istanza di test ha il proprio container (twenty-app-dev-test), i propri volumi (twenty-app-dev-test-data, twenty-app-dev-test-storage) e la propria configurazione — viene eseguita insieme alla tua istanza principale senza conflitti. Combina --test con --port per sovrascrivere 2021.
Configurazione manuale (senza lo scaffolder)
Salta lo strumento di scaffolding se stai aggiungendo l’SDK a un progetto esistente:
yarn add twenty-sdk twenty-client-sdk
Aggiungi lo script a package.json:
{
"scripts": {
"twenty": "twenty"
}
}
Ora puoi eseguire yarn twenty dev, yarn twenty docker:start e il resto.
Non installare twenty-sdk globalmente — bloccalo per progetto in modo che ogni app usi la propria versione.