Programadores → Servidores de aplicações
Execute a sua aplicação num App Server da NameOcean e faça a gestão a partir do código: faça push para fazer deploy, reinicie as aplicações, leia os respetivos logs, guarde segredos em variáveis de ambiente e faça backup ou restauro do servidor inteiro.
Cada App Server tem um repositório git em /root/app. Um push escreve aí o branch enviado e executa .nameocean/deploy.sh, caso o seu projeto o tenha. O nameocean deploy faz todo o processo:
$ 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
O push utiliza a sua chave SSH. Se o servidor ainda não a conhecer: nameocean servers ssh-keys add 3f9a1c2e (lê ~/.ssh/id_ed25519.pub). Um simples git push também faz o deploy dos ficheiros; chame POST /servers/{server}/deploys a seguir para reiniciar as aplicações.
Âmbitos servers:read e servers:write; criar um servidor requer também billing:write. {server} é o id ou o domínio predefinido. Tudo está na referência da API.
| GET /servers/plans · POST /servers | Planos e preços; criar um servidor (a primeira resposta indica o preço; depois envie confirm: true) |
| POST /servers/{server}/start · stop · restart | Iniciar, parar ou reiniciar o servidor |
| GET /servers/{server}/apps · POST …/reload | Programas do supervisor e o respetivo estado; reiniciar todos e recarregar o nginx |
| GET /servers/{server}/logs?app=web&lines=200 | As últimas linhas da saída de uma aplicação, ou app=nginx |
| GET · PATCH /servers/{server}/env | Variáveis de ambiente que todas as aplicações recebem; as aplicações reiniciam após uma alteração |
| GET · POST · DELETE /servers/{server}/ssh-keys | Chaves que podem iniciar sessão e fazer push |
| GET · POST /servers/{server}/backups · POST …/backups/restore | Listar backups, fazer backup agora, restaurar um sobre o servidor |
| POST /servers/{server}/git · GET · POST …/deploys | Preparar o destino do push; o commit em produção e o histórico de deploys |
$ 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"]}'
São guardadas apenas no servidor, em /root/conf/env, nunca na nossa base de dados. Os programas do supervisor, as sessões SSH e o .nameocean/deploy.sh recebem-nas. Lê-las requer servers:write, e a IA através de MCP vê os seus nomes, não os valores.
Os Webhooks podem subscrever eventos server.*: server.created, server.started, server.stopped, server.restarted, server.restore.started e server.deployed (com o commit e a indicação de se as aplicações arrancaram).
$ 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
Através do MCP, um assistente pode ler logs, reiniciar aplicações, definir variáveis de ambiente, concluir um deploy após um push, fazer backup de um servidor e, depois de lhe mostrar o preço, criar um. Parar, reiniciar e restaurar requerem primeiro a sua confirmação.