Guias

Como Configurar um Ambiente de Staging para a Sua App

Para configurar um ambiente de staging, faça deploy de uma segunda cópia da sua app para um URL privado próprio, dê-lhe uma base de dados e chaves de API de teste próprias, e faça-a corresponder o mais possível à configuração da produção. Depois publique primeiro no staging todas as alterações significativas, percorra os fluxos importantes e só publique na produção quando o staging estiver em ordem.

Se é novo na ideia, o que é um ambiente de staging explica o conceito. Este guia é a configuração prática, pensada para quem constrói com ferramentas de IA em vez de gerir uma equipa de DevOps.

Desenvolvimento, staging e produção

A maioria das apps pequenas precisa de três ambientes, mesmo que o primeiro seja apenas a pré-visualização do seu construtor:

AmbienteQuem usaDadosChaves
DesenvolvimentoVocê, enquanto constróiDescartáveisDe teste
StagingVocê e revisores, antes de lançarTeste ou cópia anonimizadaDe teste
ProduçãoUtilizadores reaisReaisReais

O objetivo do staging é que se comporte como a produção — mesmo código, mesma stack, mesmo tipo de configurações — mas um erro ali não prejudica ninguém.

Passo 1: Decidir o que o staging tem de igualar

O staging só é útil se os problemas aparecerem lá antes de aparecerem na produção. Iguale:

  • O mesmo código, publicado da mesma forma.
  • A mesma stack e as mesmas versões — framework, runtime, tipo de base de dados.
  • O mesmo tipo de configuração — os mesmos nomes de variáveis de ambiente, com valores de teste.
  • Os mesmos serviços — se a produção tem uma app web e uma API, o staging tem as duas.

Pode diferir em dimensão (uma máquina mais pequena é aceitável) e nos dados.

Passo 2: Criar a cópia

A abordagem mais simples: um segundo deployment do mesmo projeto, com um URL diferente, como staging.suaapp.com ou suaapp-staging.exemplo.com.

A forma de o fazer depende do seu alojamento:

  • Alojamentos com deployments de pré-visualização ou staging integrados podem criar um automaticamente para um ramo do Git.
  • Alojamentos sem essa funcionalidade: crie uma segunda app ou projeto a partir do mesmo código e faça o deploy separadamente.
  • Código no Git: mantenha um ramo staging ou main que faz deploy para o staging, e faça deploy para a produção a partir de uma versão. Veja como usar o Git com uma app criada com IA.

Passo 3: Dar ao staging a sua própria base de dados

Este é o passo que o protege. Se o staging e a produção partilharem uma base de dados, um teste que apague registos apaga registos reais.

  • Crie uma base de dados separada para o staging.
  • Preencha-a com dados de seed — registos falsos e realistas que a IA pode gerar para si.
  • Se precisar de uma cópia dos dados de produção, remova ou embaralhe primeiro nomes, emails e tudo o que seja pessoal.

Escreva um script de seed que preencha uma base de dados vazia com dados de teste realistas: 20 clientes, 50 encomendas em estados diferentes e dois utilizadores administradores. Use nomes obviamente falsos e endereços de email em example.com.

Antes de confiar na configuração, confirme a que base de dados cada cópia se liga. Pergunte diretamente:

A que base de dados esta app se liga, e de onde vem essa definição? Mostre-me o nome da variável, não a palavra-passe.

Passo 4: Usar chaves de teste e definições separadas

Tudo o que comunica com um serviço externo deve usar credenciais de teste no staging:

  • Pagamentos em modo de teste (chaves de teste da Stripe, por exemplo), para que nenhum cartão real seja debitado.
  • Email enviado para um sandbox ou apenas para o seu próprio endereço, para que os clientes nunca recebam uma mensagem de teste.
  • IA e outras APIs pagas com uma chave separada e um limite de gastos baixo.
  • Webhooks apontados para o URL de staging, e não para a produção.

Mantenha os nomes das variáveis iguais nos dois ambientes e altere apenas os valores. Assim, o código não precisa de saber onde está a correr. Para mais sobre isto, veja como manter as chaves de API seguras.

Passo 5: Manter o staging privado

O staging não deve ser público:

  • Coloque-o atrás de um início de sessão, de uma palavra-passe ou de uma lista de emails da equipa autorizados.
  • Impeça os motores de pesquisa de o indexar com uma etiqueta meta noindex ou um cabeçalho X-Robots-Tag.
  • Não crie ligações para ele a partir do seu site público.
  • Faça-o parecer diferente — um banner colorido "STAGING" evita testar no separador errado.

Adicione um banner amarelo vivo no topo de cada página com o texto "STAGING — apenas dados de teste" quando a variável de ambiente APP_ENV for "staging". Nesse caso, adicione também uma etiqueta meta noindex.

Passo 6: Criar uma rotina de lançamento

O staging só ajuda se o usar sempre. Uma rotina simples:

  1. Faça a alteração em desenvolvimento e verifique-a na pré-visualização.
  2. Publique-a no staging.
  3. Percorra os seus fluxos principais: registo, início de sessão, a funcionalidade principal, pagamentos, tudo o que a alteração tocou.
  4. Se algo falhar, corrija e volte a publicar no staging.
  5. Publique a mesma versão na produção.
  6. Verifique a produção rapidamente — os mesmos fluxos, de forma breve.

Escreva os fluxos principais como um pequeno guião de testes. Veja como testar a sua app antes do lançamento para saber o que incluir.

Passo 7: Tratar com cuidado as alterações à base de dados

As alterações à estrutura da base de dados — acrescentar uma coluna, renomear uma tabela — são onde o staging mais se justifica.

  • Faça cada alteração estrutural primeiro no staging.
  • Verifique se os dados existentes sobreviveram, e não apenas se as novas funcionalidades funcionam.
  • Faça uma cópia de segurança da produção antes de executar a mesma alteração lá. Veja como fazer backup da base de dados da sua app.
  • Prefira alterações que acrescentem em vez de renomear ou apagar, para que a versão antiga continue a funcionar se precisar de reverter.

Prompts de exemplo

Explique o que aconteceria aos dados existentes se executássemos esta alteração à base de dados em produção. Algo é apagado ou renomeado?

Faça com que todas as definições específicas de cada ambiente — URLs de API, chaves, remetente de email, o próprio URL do site — venham de variáveis de ambiente com os mesmos nomes no staging e na produção. Liste-as.

Escreva uma lista de verificação curta com os fluxos que devo testar no staging antes de cada lançamento, com base no que esta app faz.

Erros comuns

  • Base de dados partilhada. O erro mais prejudicial. O staging tem sempre a sua própria.
  • Chaves reais no staging. Cobranças reais, emails reais para clientes reais.
  • O staging afasta-se da produção. Versões ou definições diferentes fazem com que o staging deixe de apanhar problemas.
  • Um site de staging público e indexado que aparece nos resultados de pesquisa ao lado do seu site real.
  • Saltar o staging em alterações "pequenas". As alterações pequenas também partem coisas.
  • Testar no separador errado. Um banner visível resolve isso.

Lista de verificação

  • O staging usa o mesmo código, stack e serviços que a produção.
  • O staging tem a sua própria base de dados com dados de teste ou anonimizados.
  • Pagamentos, email e APIs pagas usam chaves de teste no staging.
  • Os nomes das variáveis coincidem entre ambientes; só os valores diferem.
  • O staging está atrás de um início de sessão ou palavra-passe e não é indexado.
  • Aparece um banner quando está no staging.
  • Cada lançamento passa primeiro pelo staging, com uma lista escrita de fluxos a verificar.
  • As alterações à base de dados são feitas primeiro no staging, com cópia de segurança da produção antes do lançamento.

Staging na Mythex

A Publicação da Mythex dá-lhe um URL ativo por app; não existe um interruptor de staging separado. Na prática, tem duas opções:

  • A pré-visualização como verificação antes do lançamento. Cada projeto corre num espaço de trabalho privado na cloud com uma pré-visualização ativa. O /test faz com que o agente navegue por ela como um utilizador, e uma ligação de Partilha permite que um cliente ou colega reveja a pré-visualização sem publicar. Veja Pré-visualização e Código. Isto basta para muitos projetos a solo.
  • Um segundo projeto como staging. No plano Pro, exporte o projeto e importe-o para um novo projeto, dê-lhe a sua própria base de dados e segredos de chaves de teste, e publique-o com o seu próprio slug. Lance para ele antes de publicar o projeto de produção.

Em qualquer dos casos, pergunte ao agente a que base de dados a pré-visualização e a app publicada se ligam antes de testar algo destrutivo, e use os checkpoints para reverter uma alteração má. Para colocar uma app em produção de forma mais ampla, veja como levar um protótipo de IA para produção.

Perguntas

Qual é a forma mais fácil de configurar um ambiente de staging?

Faça deploy de uma segunda cópia da sua app para um URL próprio, dê-lhe uma base de dados e chaves de API de teste próprias, e crie o hábito de publicar nela antes da produção. Não precisa de ferramentas especiais para começar; precisa de separação e de uma rotina.

O staging deve usar uma cópia dos dados de produção?

Use dados de teste sempre que puder. Se precisar de dados realistas, copie a produção e remova ou embaralhe primeiro as informações pessoais. Nunca aponte o staging para a base de dados de produção.

Como impeço que motores de pesquisa e desconhecidos encontrem o meu site de staging?

Coloque o staging atrás de um início de sessão ou palavra-passe e diga aos motores de pesquisa para não o indexarem, com uma etiqueta noindex ou um cabeçalho robots. Não crie ligações para ele a partir do seu site público.

Um ambiente de staging duplica os meus custos de alojamento?

Normalmente não. O staging recebe muito pouco tráfego, por isso, num alojamento que reduz as apps inativas a zero, custa uma fração da produção. Mantenha-o pequeno e deixe-o adormecer entre os testes.

Mythex · Pricing · Crie qualquer coisa com IA · Modelos de sites e apps · Mythex comparado · Glossário de criação de apps com IA · Ferramentas grátis para criar apps com IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)