Como funciona
O que acontece por trás do endereço do seu aplicativo.
Do pagamento a um aplicativo em execução e vigiado, e o que acontece com ele se você parar de pagar. Esta página descreve como a plataforma funciona hoje e diz com clareza o que ainda não foi construído.
Lançamento
Do pagamento a um endereço no ar.
Ninguém abre um chamado: a plataforma executa cada etapa sozinha, e seu painel mostra em que ponto o aplicativo está.
-
Pagamento confirmado
O provedor de pagamentos nos informa que a assinatura está ativa. Seu cartão vai para o provedor; nós nunca o vemos.
-
Implantado
A plataforma coloca seu aplicativo em nosso servidor compartilhado na UE e o inicia em contêineres próprios, com configuração própria e segredos recém-gerados, a partir de uma versão exata que fixamos.
-
Verificado
Consultamos o endereço de integridade do aplicativo de fora, como um visitante faria, e esperamos uma boa resposta. Somente essa resposta transforma “implantando” em “em execução”.
-
No ar
O aplicativo responde em seu próprio endereço HTTPS, e enviamos o endereço a você por e-mail.
Se a verificação não passar. Se o aplicativo não responder dentro do tempo permitido, o lançamento é marcado como falho e um operador é alertado. Um lançamento cuja resposta ninguém viu nunca é informado como em execução.
Isolamento
Seu próprio stack, não uma conta compartilhada.
Cada aplicativo é executado como um stack Docker Compose separado em um servidor compartilhado.
-
Contêineres próprios
O aplicativo e, se usar um separado, seu banco de dados são executados em contêineres iniciados só para você. Os aplicativos de outros clientes são executados em stacks próprios.
-
Dados próprios
Arquivos e bancos de dados ficam em volumes que pertencem ao seu stack. Um contêiner de banco de dados fica na rede privada do stack e não é publicado nem no servidor nem na internet; a porta do próprio aplicativo não é publicada no endereço público do servidor.
-
Limites pelos quais você paga
Cada stack é mantido dentro dos limites de CPU e memória do seu plano.
Onde a separação termina. Stacks de clientes diferentes compartilham uma máquina e seu kernel. É isolamento por contêineres, não uma máquina virtual para cada um. Um servidor dedicado está no roteiro.
Endereço e HTTPS
Um endereço próprio, seguro desde a primeira requisição.
Onde o aplicativo é executado, como se chama e como o tráfego chega até ele.
-
Na UE
Os servidores ficam em Frankfurt (AWS Lightsail, eu-central-1), e hoje todos os aplicativos são executados lá. Escolher outra região está no roteiro.
-
Um subdomínio próprio
O aplicativo responde em um endereço no formato nome.poof.run, escolhido na compra, sem DNS para você configurar. Ele também pode responder no seu próprio domínio.
-
Somente HTTPS
Um certificado curinga do Let’s Encrypt cobre todos os endereços do servidor e se renova sozinho. O HTTP simples só recebe um redirecionamento para HTTPS, e o proxy é o único caminho público até o aplicativo.
Monitoramento
Vigiado, para que você não precise.
Dois tipos de verificação rodam o tempo todo: em cada aplicativo e em cada servidor.
-
O aplicativo é consultado
A cada poucos minutos, a plataforma consulta de fora o endereço de integridade do aplicativo, como um visitante. Uma resposta ruim, um tempo esgotado ou uma conexão interrompida conta como falha. Uma sequência de falhas, não uma só (o que é normal durante uma atualização), abre um incidente e envia um e-mail aos nossos operadores, que recebem outro quando ele se recupera.
-
A máquina é medida
Estado, CPU, memória, disco e capacidade de rajada de cada servidor são medidos a cada poucos minutos. Pouco espaço livre em disco, capacidade de rajada esgotada ou uma verificação do provedor com falha abrem um incidente.
-
Contêineres reiniciam sozinhos
Um contêiner que falha é iniciado de novo e volta após a reinicialização do servidor, a menos que o tenhamos parado de propósito.
O que isto é. Os alertas vão para nossos operadores, não para você, e as verificações mostram que o aplicativo responde, não o que há dentro dele.
Atualizações
Versões que escolhemos, mudanças que fazemos.
Você não instala nem aplica patches. As atualizações também não são silenciosas: é assim que funcionam.
-
Versões exatas
Um aplicativo é executado em uma versão exata da imagem e não em uma tag móvel como “latest”, de modo que o que roda é o que preparamos.
-
Implantadas por nós
Uma nova versão chega ao seu aplicativo quando um operador inicia a atualização, da versão que você usa para a seguinte. O aplicativo é reiniciado nela, então espere uma breve interrupção.
-
Só em um sentido
Não há reversão. Uma atualização pode alterar o banco de dados do aplicativo de formas que não podem ser desfeitas, e ainda não fazemos backups, então não há para onde voltar.
Cobrança e ciclo de vida
Pagar, parar e o que permanece.
O que acontece com um aplicativo em execução acompanha sua assinatura, e nada é excluído sem aviso.
-
Um pagamento falha
O aplicativo continua funcionando enquanto o provedor de pagamentos tenta a cobrança de novo. Você recebe um e-mail pedindo para atualizar a forma de pagamento e um lembrete enquanto durar.
-
A assinatura termina
Quando é cancelada ou as novas tentativas se esgotam, o aplicativo é parado (parado, não excluído) e escrevemos para você. Um cancelamento marcado para o fim do período mantém o aplicativo funcionando até lá.
-
Mantido por 30 dias
Os dados ficam no servidor por 30 dias a partir do momento da parada. Para trazê-lo de volta nesse prazo, escreva para nós: os dados ainda estão lá. Escrevemos para você 7 dias antes do fim.
-
Depois, excluído
Segue-se uma janela final de 24 horas, com um último e-mail; até ela terminar, basta escrever para nós e o aplicativo volta. Depois disso, o aplicativo, seus volumes de dados e seus arquivos são destruídos, e isso não pode ser desfeito.
Sem backup por trás. Excluído significa perdido: não guardamos nenhuma cópia para restaurar, e é para isso que servem os lembretes.