Sviluppatori → Server di app
Esegua la Sua app su un App Server NameOcean e la gestisca dal codice: push per il deploy, riavvio delle app, lettura dei log, segreti nelle variabili d'ambiente e backup o ripristino dell'intero server.
Ogni App Server ha un repository git in /root/app. Un push vi scrive il branch inviato ed esegue .nameocean/deploy.sh, se il progetto ne ha uno. nameocean deploy esegue l'intero ciclo:
$ nameocean deploy 3f9a1c2e Remote nameocean → ssh://root@3f9a1c2e.nameocean.org:2152/root/app (added) Pushed main to nameocean (3f9a1c2 Fix checkout) Pushed main to origin Restarted 2 apps, nginx reloaded: web running, worker running
Il push usa la Sua chiave SSH. Se il server non la conosce ancora: nameocean servers ssh-keys add 3f9a1c2e (legge ~/.ssh/id_ed25519.pub). Anche un semplice git push distribuisce i file; chiami poi POST /servers/{server}/deploys per riavviare le app.
Scope servers:read e servers:write; la creazione di un server richiede anche billing:write. {server} è l'id o il dominio predefinito. Trova tutto nel riferimento API.
| GET /servers/plans · POST /servers | Piani e prezzi; crea un server (la prima risposta è il prezzo, poi invii confirm: true) |
| POST /servers/{server}/start · stop · restart | Avvia, arresta o riavvia il server |
| GET /servers/{server}/apps · POST …/reload | Programmi supervisor e il loro stato; riavviali tutti e ricarica nginx |
| GET /servers/{server}/logs?app=web&lines=200 | Le ultime righe dell'output di un'app, oppure app=nginx |
| GET · PATCH /servers/{server}/env | Variabili d'ambiente ricevute da ogni app; le app si riavviano dopo una modifica |
| GET · POST · DELETE /servers/{server}/ssh-keys | Chiavi che possono accedere ed eseguire push |
| GET · POST /servers/{server}/backups · POST …/backups/restore | Elenca i backup, esegui un backup ora, ripristinane uno sul server |
| POST /servers/{server}/git · GET · POST …/deploys | Prepara la destinazione del push; il commit distribuito e la cronologia dei deploy |
$ curl -X PATCH https://nameocean.net/api/v1/servers/3f9a1c2e/env \ -H "Authorization: Bearer $NAMEOCEAN_API_KEY" -H "Content-Type: application/json" \ -d '{"set": {"DATABASE_URL": "postgres://app@127.0.0.1/app"}, "unset": ["DEBUG"]}'
Sono conservate solo sul server, in /root/conf/env, mai nel nostro database. Le ricevono i programmi supervisor, le sessioni SSH e .nameocean/deploy.sh. Per leggerle serve servers:write e l'AI tramite MCP ne vede i nomi, non i valori.
I webhook possono iscriversi a server.*: server.created, server.started, server.stopped, server.restarted, server.restore.started e server.deployed (con il commit e l'indicazione se le app si sono avviate).
$ nameocean deploy 3f9a1c2e $ nameocean servers logs 3f9a1c2e --app web -n 200 $ nameocean servers env set 3f9a1c2e DATABASE_URL=postgres://app@127.0.0.1/app $ nameocean servers restart-apps 3f9a1c2e $ nameocean servers backups ls 3f9a1c2e
Tramite MCP un assistente può leggere i log, riavviare le app, impostare le variabili d'ambiente, completare un deploy dopo il push, eseguire il backup di un server e, dopo averLe mostrato il prezzo, crearne uno. Per arrestare, riavviare e ripristinare viene prima chiesta la Sua conferma.