Riferimento completo dei comandi
Sintassi dei comandi
Tutti i comandi seguono la struttura gerdoo <command> [subcommand] [args] [flags]. Dove compare <slug|id>, puoi specificare il nome breve (slug) oppure l’identificativo del servizio. I comandi che elencano o mostrano dati accettano il flag --json per stampare la risposta API grezza, utile per script e CI. Le variabili d’ambiente GERDOO_API e GERDOO_TOKEN sovrascrivono rispettivamente l’indirizzo API e il token.
Autenticazione e account
Accedi al tuo account Cloud Noce e gestisci il token CLI. Il token viene salvato in ~/.config/gerdoo/config.json.
gerdoo login [--no-browser] [--token <grd_...>] [--password] [--api <url>]Accesso tramite browser: la CLI mostra un codice breve, apre la pagina di conferma di Cloud Noce e riceve il token CLI dopo la tua approvazione. Non devi inserire la password nel terminale.
| Flag | Descrizione |
|---|---|
--no-browser | Stampa soltanto l’indirizzo di conferma senza aprire il browser, utile per una macchina remota. |
--token <grd_...> | Convalida e salva un token esistente, utile per CI e assistenti. |
--password | Metodo precedente: accesso con email o numero di cellulare e password, per ambienti senza browser. |
--api <url> | Indirizzo API a cui connettersi (predefinito: https://api.gerdoo.cloud ). |
gerdoo logoutElimina il token e il file di configurazione salvati.
gerdoo whoamiMostra l’account attualmente connesso: nome, email e numero di telefono.
Progetti (workspace)
Un progetto è uno spazio di lavoro che raggruppa servizi, ambienti e domini.
gerdoo projects [--json]Elenca i tuoi progetti con il numero di servizi e server.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza al posto della tabella. |
gerdoo project get <slug|id> [--json]Mostra i dettagli di un progetto, inclusi servizi e domini.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo project create --name <n> [--description <d>]Crea un nuovo progetto.
| Flag | Descrizione |
|---|---|
--name <n> | Nome del progetto (obbligatorio). |
--description <d> | Descrizione facoltativa del progetto. |
gerdoo project update <slug|id> [--name <n>] [--description <d>]Modifica il nome o la descrizione del progetto.
| Flag | Descrizione |
|---|---|
--name <n> | Nuovo nome del progetto. |
--description <d> | Nuova descrizione del progetto. |
gerdoo project delete <slug|id>Elimina il progetto con conferma interattiva; prima devi eliminare i suoi servizi e le sue risorse.
Ambienti (environments)
Gli ambienti di un progetto (production/staging/preview) e le relative variabili. Specifica un ambiente tramite nome o id.
gerdoo project env <project> list [--json]Elenca gli ambienti di un progetto.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo project env <project> create [flags]Crea un nuovo ambiente nel progetto.
| Flag | Descrizione |
|---|---|
--name <n> | Nome dell’ambiente (predefinito: il valore di type). |
--type <t> | Tipo di ambiente: production | staging | preview (predefinito: staging). |
--branch <b> | Branch Git di origine. |
--auto-deploy | Deploy automatico a ogni push (attivo per impostazione predefinita). |
gerdoo project env <project> get <env> [--json]Mostra i dettagli di un ambiente.
gerdoo project env <project> update <env> [flags]Modifica un ambiente.
| Flag | Descrizione |
|---|---|
--name <n> | Nuovo nome dell’ambiente. |
--branch <b> | Branch Git di origine. |
--auto-deploy | Attiva o disattiva il deploy automatico. |
gerdoo project env <project> delete <env>Elimina un ambiente; l’ambiente production non può essere eliminato.
gerdoo project env <project> vars <env> [--json]Elenca le variabili dell’ambiente con i valori mascherati.
gerdoo project env <project> vars <env> set KEY=VALUE [--build-time]Aggiunge o modifica una variabile dell’ambiente.
| Flag | Descrizione |
|---|---|
--build-time | Rende disponibile la variabile durante la build oltre che in fase di esecuzione. |
gerdoo project env <project> vars <env> rm KEY [KEY...]Elimina una o più variabili dell’ambiente.
Servizi: elenco e creazione
gerdoo services [--json]Elenca tutti i servizi, da Git e da immagini.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo service create --name <n> --image <img> [flags]Crea un servizio da un’immagine Docker esistente.
| Flag | Descrizione |
|---|---|
--name <n> | Nome del servizio (obbligatorio). |
--image <img> | Immagine Docker da eseguire (obbligatoria). |
--expose <mode> | Modalità di accesso: http | tcp | private. |
--private | Rende il servizio privato (equivale a —expose private). |
--port N | Porta interna da esporre (0 = valore predefinito dell’immagine). |
--env K=V | Variabile d’ambiente (ripetibile). |
--project <slug|id> | Progetto di destinazione (predefinito: Default). |
Deploy da una cartella locale
Crea o aggiorna un servizio sempre attivo a partire dal codice sorgente locale. Funziona anche senza flag.
gerdoo deploy [dir]Comprime e carica la cartella (predefinita: «.»); aggiorna il servizio collegato oppure ne crea uno nuovo se non esiste un collegamento.
| Flag | Descrizione |
|---|---|
--service <slug|id> | Esegue il deploy su questo servizio specifico, al posto del collegamento .gerdoo. |
--name <n> | Nome del nuovo servizio (predefinito: il nome della cartella). |
-y, --yes | Salta la conferma interattiva durante la creazione di un nuovo servizio. |
--project <slug|id> | Progetto di destinazione del nuovo servizio (predefinito: Default). |
--private | Rende il servizio privato. |
--port N | Porta interna (predefinita: il valore $PORT dell’applicazione). |
--framework <name> | Indicazione per il rilevamento dello stack durante la build. |
--env K=V | Variabile d’ambiente (ripetibile). |
gerdoo service deploy [dir]Alias di «gerdoo deploy» con gli stessi flag.
Servizi: configurazione e ciclo di vita
gerdoo service status <slug|id>Stato, URL, endpoint TCP diretto e utilizzo in tempo reale di CPU e memoria.
gerdoo service logs <slug|id> [--tail N]Mostra le ultime righe dei log del container.
| Flag | Descrizione |
|---|---|
--tail N | Numero di righe dei log (predefinito: 200). |
gerdoo service stop <slug|id>Arresta il servizio in esecuzione (stato stopped; i volumi vengono conservati).
gerdoo service start <slug|id>Avvia nuovamente un servizio arrestato.
gerdoo service restart <slug|id>Riavvia un servizio in esecuzione senza modificarne lo stato persistente.
gerdoo service update <slug|id> [flags]Aggiorna immagine, branch o variabili; la modifica dell’immagine o delle variabili ricrea il servizio.
| Flag | Descrizione |
|---|---|
--image <img> | Nuova immagine Docker. |
--branch <b> | Cambia il branch Git per i servizi da Git. |
--auto-deploy | Attiva o disattiva il deploy automatico a ogni push. |
--env-set K=V | Aggiunge o modifica una variabile env del servizio (ripetibile). |
--env-rm K | Elimina una variabile env del servizio (ripetibile). |
gerdoo service delete <slug|id>Elimina completamente il servizio con conferma interattiva.
Variabili d’ambiente
Esistono due archivi separati: «env» è la semplice mappa di variabili del servizio, mentre «vars» è l’archivio di variabili tipizzate con supporto per build-time e secret.
gerdoo service env <slug|id>Elenca le variabili della mappa env del servizio.
gerdoo service env <slug|id> set KEY=VALUE [...]Aggiunge o modifica una o più variabili env; il servizio viene ricreato.
gerdoo service env <slug|id> rm KEY [...]Elimina una o più variabili env.
gerdoo service vars <slug|id> [--json]Elenca le variabili dell’archivio tipizzato con le indicazioni build/secret.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo service vars <slug|id> set KEY=VALUE [flags]Aggiunge o modifica una variabile nell’archivio tipizzato.
| Flag | Descrizione |
|---|---|
--build-time | Rende disponibile la variabile durante la build oltre che in fase di esecuzione. |
--secret | Salva la variabile come segreta; il valore viene mascherato. |
gerdoo service vars <slug|id> rm KEY [...]Elimina una o più variabili dall’archivio tipizzato.
Domini personalizzati
gerdoo service domains <slug|id> [--json]Elenca i domini personalizzati e i record DNS necessari.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo service domains <slug|id> add <domain>Aggiunge un dominio personalizzato, solo per servizi http, e mostra i record DNS.
gerdoo service domains <slug|id> verify <domain|id>Controlla il record TXT e verifica la proprietà del dominio.
gerdoo service domains <slug|id> rm <domain|id>Elimina un dominio personalizzato.
Build, release e rollback
gerdoo service builds <slug|id> [--json]Elenca le build recenti del servizio.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo service builds <slug|id> logs <buildId>Mostra i log di una build specifica.
gerdoo service releases <slug|id> [--json]Elenca le release recenti del servizio.
| Flag | Descrizione |
|---|---|
--json | Stampa la risposta API grezza. |
gerdoo service rollback <slug|id> <buildId>Ripristina una build precedente già pronta, senza eseguire una nuova build.
File su disco (volumi)
gerdoo service files <slug|id> [path] [--volume <mount|id>]Esplora i file di un volume.
| Flag | Descrizione |
|---|---|
--volume <mount|id> | Seleziona il volume tramite percorso di mount o id (predefinito: l’unico volume). |
gerdoo service pull <slug|id> <remote-path> [flags]Scarica un file da un volume.
| Flag | Descrizione |
|---|---|
-o <local> | Percorso locale di destinazione (predefinito: il nome del file). |
--volume <mount|id> | Seleziona il volume. |
gerdoo service push <slug|id> <local-file> [flags]Carica un file locale su un volume.
| Flag | Descrizione |
|---|---|
--dir <path> | Cartella di destinazione nel volume (predefinita: «/»). |
--volume <mount|id> | Seleziona il volume. |
Scorciatoie e strumenti
gerdoo logs <slug|id> [--tail N] [--since 10m] [--grep <pat>] [--level error|warn|info] [--invert]Scorciatoia di «gerdoo service logs» con filtri per l’output.
| Flag | Descrizione |
|---|---|
--tail N | Numero massimo di righe da esaminare (predefinito: 200; massimo: 2000). |
--since | Mostra solo i log più recenti dell’intervallo indicato: 10m, 2h oppure un timestamp RFC3339. |
--grep | Mostra solo le righe corrispondenti al pattern, senza distinzione tra maiuscole e minuscole. |
--level | Mostra solo le righe con livello error, warn o info e superiore. |
--invert | Inverte il filtro, mantenendo le righe che non corrispondono. |
Quando applichi un filtro, viene riportato anche il numero di righe corrispondenti rispetto al totale esaminato, per distinguere l’assenza di log da un filtro senza risultati.
gerdoo service exec <slug|id> <command...> [--timeout N]Esegue un singolo comando nel container in esecuzione e ne stampa l’output, per ottenere informazioni non disponibili nei log, come il valore effettivo di una variabile d’ambiente o la presenza di un file generato dalla build. Il servizio deve essere in esecuzione.
Comandi rimossi
Le scorciatoie gerdoo apps, gerdoo status, gerdoo open e gerdoo env sono state rimosse: ciascuna era un alias di un sottocomando gerdoo service. Usa invece gerdoo services, gerdoo service status, gerdoo service open e gerdoo service env. gerdoo deploy e gerdoo logs restano invariati.
gerdoo upgradeAggiorna automaticamente la CLI all’ultima versione.
gerdoo versionMostra la versione installata.