Entwickler → App-Server
Betreiben Sie Ihre App auf einem NameOcean App Server und verwalten Sie ihn per Code: Deployment per Push, Apps neu starten, ihre Logs lesen, Secrets in Env-Variablen ablegen und den gesamten Server sichern oder wiederherstellen.
Jeder App Server hat ein git-Repository in /root/app. Ein Push schreibt den gepushten Branch dorthin und führt .nameocean/deploy.sh aus, sofern Ihr Projekt eine solche Datei enthält. nameocean deploy erledigt den gesamten Ablauf:
$ 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
Der Push verwendet Ihren SSH-Schlüssel. Falls der Server ihn noch nicht kennt: nameocean servers ssh-keys add 3f9a1c2e (liest ~/.ssh/id_ed25519.pub). Ein einfaches git push deployt die Dateien ebenfalls; rufen Sie danach POST /servers/{server}/deploys auf, um die Apps neu zu starten.
Scopes servers:read und servers:write; zum Erstellen eines Servers wird zusätzlich billing:write benötigt. {server} ist die ID oder die Standard-Domain. Alles Weitere finden Sie in der API-Referenz.
| GET /servers/plans · POST /servers | Tarife und Preise; Server erstellen (die erste Antwort nennt den Preis, dann confirm: true senden) |
| POST /servers/{server}/start · stop · restart | Server starten, stoppen oder neu starten |
| GET /servers/{server}/apps · POST …/reload | Supervisor-Programme und ihr Status; alle neu starten und nginx neu laden |
| GET /servers/{server}/logs?app=web&lines=200 | Die letzten Zeilen der Ausgabe einer App oder app=nginx |
| GET · PATCH /servers/{server}/env | Env-Variablen, die jede App erhält; die Apps starten nach einer Änderung neu |
| GET · POST · DELETE /servers/{server}/ssh-keys | Schlüssel, die sich anmelden und pushen können |
| GET · POST /servers/{server}/backups · POST …/backups/restore | Backups auflisten, jetzt sichern, ein Backup auf dem Server wiederherstellen |
| POST /servers/{server}/git · GET · POST …/deploys | Push-Ziel vorbereiten; der deployte Commit und der Deployment-Verlauf |
$ 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"]}'
Sie werden ausschließlich auf dem Server in /root/conf/env gespeichert, niemals in unserer Datenbank. Supervisor-Programme, SSH-Sitzungen und .nameocean/deploy.sh erhalten sie. Zum Auslesen ist servers:write erforderlich, und die KI sieht per MCP nur ihre Namen, nicht ihre Werte.
Webhooks können server.* abonnieren: server.created, server.started, server.stopped, server.restarted, server.restore.started und server.deployed (mit dem Commit und der Angabe, ob die Apps gestartet sind).
$ 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
Über MCP kann ein Assistent Logs lesen, Apps neu starten, Umgebungsvariablen setzen, ein Deployment nach dem Push abschließen, einen Server sichern und – nachdem er Ihnen den Preis angezeigt hat – einen Server erstellen. Vor dem Stoppen, Neustarten und Wiederherstellen wird zuerst Ihre Zustimmung eingeholt.