Utvecklare → Appservrar

App Server API

Kör din app på en NameOcean App Server och hantera den med kod: pusha för att driftsätta, starta om apparna, läs deras loggar, förvara hemligheter i miljövariabler och säkerhetskopiera eller återställ hela servern.

Driftsätt med git

Varje App Server har ett git-repository i /root/app. En push skriver den pushade grenen dit och kör .nameocean/deploy.sh om ditt projekt har en sådan. nameocean deploy gör hela proceduren:

nameocean
$ 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
  1. Lägger till en git-remote med namnet nameocean för servern om projektet saknar den.
  2. Pushar den aktuella grenen till serverns repository.
  3. Pushar den även till projektets egen remote (dess upstream eller origin), om du inte anger --no-origin.
  4. Startar om alla supervisor-program och laddar om nginx, registrerar sedan driftsättningen (POST /servers/{server}/deploys) och skickar en server.deployed-händelse.

Pushen använder din SSH-nyckel. Om servern inte känner till den än: nameocean servers ssh-keys add 3f9a1c2e (den läser ~/.ssh/id_ed25519.pub). En vanlig git push driftsätter också filerna; anropa POST /servers/{server}/deploys efteråt för att starta om apparna.

Endpoints

Behörigheterna servers:read och servers:write; för att skapa en server krävs även billing:write. {server} är id:t eller standarddomänen. Allt finns i API-referensen.

GET /servers/plans · POST /serversPaket och priser; skapa en server (första svaret är priset, skicka sedan confirm: true)
POST /servers/{server}/start · stop · restartStarta, stoppa eller starta om servern
GET /servers/{server}/apps · POST …/reloadSupervisor-program och deras status; starta om alla och ladda om nginx
GET /servers/{server}/logs?app=web&lines=200De sista raderna av en apps utdata, eller app=nginx
GET · PATCH /servers/{server}/envMiljövariabler som alla appar får; apparna startas om efter en ändring
GET · POST · DELETE /servers/{server}/ssh-keysNycklar som kan logga in och pusha
GET · POST /servers/{server}/backups · POST …/backups/restoreLista säkerhetskopior, säkerhetskopiera nu, återställ en över servern
POST /servers/{server}/git · GET · POST …/deploysFörbered push-målet; den driftsatta commiten och driftsättningshistoriken

Miljövariabler

curl
$ 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"]}'

De lagras endast på servern, i /root/conf/env, aldrig i vår databas. Supervisor-program, SSH-sessioner och .nameocean/deploy.sh får tillgång till dem. Att läsa dem kräver servers:write, och AI:n över MCP ser deras namn, inte deras värden.

Händelser

Webhooks kan prenumerera på server.*: server.created, server.started, server.stopped, server.restarted, server.restore.started och server.deployed (med commiten och om apparna startade).

Från terminalen

nameocean
$ 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

Från er AI

Via MCP kan en assistent läsa loggar, starta om appar, ange miljövariabler, slutföra en driftsättning efter en push, säkerhetskopiera en server och, efter att ha visat dig priset, skapa en. Att stoppa, starta om och återställa kräver ditt godkännande först.