Acessando as Configurações

  1. No menu lateral, clique em Projetos
  2. Localize e clique no nome do projeto desejado
  3. Na página do projeto, clique no botão "Editar" no canto superior direito

Nota: Lista branca e lista negra são recursos exclusivos de projetos HTTP. Bancos de dados não oferecem whitelist ou blacklist.


Configurações Disponíveis

Nome do Projeto

O nome do projeto pode ser alterado a qualquer momento.

Regras:

  • Mínimo: 6 caracteres
  • Máximo: 32 caracteres
  • Apenas letras minúsculas, números e hífens

Nota: A alteração do nome não afeta o subdomínio existente.


Descrição do Projeto

A descrição do projeto pode ser alterada a qualquer momento.

Características:

  • Campo opcional para descrever o propósito do projeto
  • Ajuda a identificar e organizar seus projetos
  • Pode incluir informações como tecnologia utilizada, cliente, ou finalidade

Imagem do Projeto

A imagem OCI utilizada pelo projeto pode ser atualizada.

Como atualizar:

  1. Na seção de imagem, insira a nova imagem no formato:

    docker.io/nginxinc/nginx-unprivileged:stable-alpine

    Para NGINX, use a imagem nginxinc/nginx-unprivileged, pois imagens OCI na Zenifra não devem executar o processo principal como root.

Limitações:

  • Não é possível mudar o tipo de autenticação da imagem (pública/privada)
  • A imagem privada deve continuar sendo privada
  • A imagem pública deve continuar sendo pública

Dica: Para atualizar a imagem automaticamente via GitHub Actions, consulte nosso tutorial de deploy automático.


Comandos de Build e Start (Projetos GitHub)

Se o projeto foi criado com origem em Repositório GitHub, você pode editar os comandos de pre-build, build e start mesmo após a criação.

Quando isso é útil:

  • Ajustar o fluxo de build após mudar framework ou estrutura do repositório
  • Corrigir comandos de instalação antes de uma nova publicação
  • Alterar o comando de inicialização sem recriar o projeto

Exemplos de comandos:

pre-build: npm install
build: npm run build
start: npm run start

Nota: Essa opção vale para projetos baseados em Repositório GitHub. Projetos publicados por imagem OCI não usam esses comandos nessa tela.


Variáveis de Ambiente (ENVs)

As variáveis de ambiente podem ser adicionadas, editadas ou removidas.

Características:

  • Limite de 50 ENVs por projeto
  • As instâncias são reiniciadas automaticamente ao alterar ENVs
  • Use ENVs para configurações sensíveis como API keys e senhas de banco

Exemplo de ENVs:

DATABASE_URL=postgres://user:pass@host:5432/db
API_KEY=sua-chave-aqui
NODE_ENV=production

Nota: Além das ENVs definidas por você, a Zenifra também pode injetar variáveis operacionais automaticamente, como ZENIFRA_INSTANCE_VERSION, útil para diferenciar versões nos logs e no troubleshooting.


Lista Branca (Whitelist)

A whitelist define quais endereços IP podem acessar o projeto.

Características:

  • IPs não listados serão bloqueados
  • Formato CIDR: 192.168.1.0/24 ou 10.0.0.1/32
  • Máximo de 10 entradas na whitelist

Como adicionar seu IP: Clique em "Adicionar IP Atual" para incluir automaticamente seu endereço IP.

Formato CIDR:

  • 0.0.0.0/0 - Permite todos os IPs
  • XXX.XXX.XXX.XXX/32 - IP específico
  • XXX.XXX.XXX.XXX/YY - Bloco de IPs

Nota: A alteração da whitelist não reinicia as instâncias.


Lista Negra (Blacklist)

A blacklist define IPs que serão bloqueados mesmo se estiverem na whitelist.

Características:

  • IPs bloqueados não terão acesso ao projeto
  • Útil para bloquear IPs maliciosos
  • Máximo de 10 entradas na blacklist

Nota: A alteração da blacklist não reinicia as instâncias.


Número de Instâncias

Você pode aumentar ou diminuir o número de instâncias do projeto.

Limites:

  • Mínimo: 1 instância
  • Máximo: 10 instâncias

Para aumentar o limite: Entre em contato com o suporte se precisar de mais de 10 instâncias.

Impacto:

  • Mais instâncias = maior capacidade de processamento
  • Mais instâncias = maior custo
  • O tráfego é distribuído entre as instâncias

Ações do Projeto

Parar o Projeto

Ao parar o projeto:

  • As instâncias são interrompidas
  • O armazenamento efêmero é apagado
  • O projeto não pode ser acessado
  • Para projetos por hora, a cobrança é interrompida

Quando usar:

  • Quando não precisa da aplicação temporariamente
  • Para economizar em projetos por hora

Iniciar o Projeto

Para iniciar um projeto que está parado:

  • As instâncias são iniciadas novamente
  • O armazenamento efêmero é recriado
  • O projeto volta a ser acessível
  • A cobrança é retomada (para projetos por hora)

Desativar a Renovação Automática

Apenas para projetos com contrato mensal ou anual

Nesse caso, o comportamento correto e impedir a renovacao automatica do contrato:

  • o projeto permanece ativo ate o final do periodo contratado
  • ao expirar, o contrato nao sera renovado
  • o fluxo e feito pela pagina de edicao do projeto

Nota: Para projetos com pagamento por hora, essa opção não está disponível. Use "Parar Projeto" para interromper a cobrança.

Deletar o Projeto

A deleção é permanente e irreversível.

O que acontece:

  • Todas as instâncias são removidas
  • Todos os dados são apagados
  • O armazenamento é liberado
  • API Keys são revogadas

Requisitos:

  • O projeto não pode ter um plano ativo
  • Para contratos, aguarde o vencimento

Próximos Passos


FAQ

Posso alterar o plano do projeto?

Sim. Se o modelo de pagamento for por hora, você pode alterar o plano a qualquer momento. Para contratos mensais ou anuais, a mudança só é permitida ao final do período contratado.

A alteração de ENVs causa downtime?

Sim. As instâncias são reiniciadas para aplicar as novas variáveis de ambiente. Planeje as alterações em horários de baixo acesso.

Posso restaurar um projeto deletado?

Não. A deleção é permanente. Certifique-se de fazer backup dos dados antes de deletar.

Posso alterar os comandos de pre-build, build e start depois?

Sim. Em projetos com origem em Repositório GitHub, esses comandos podem ser editados após a criação do projeto.

Posso alterar o diretório de persistência depois?

Não. O caminho definido na criação do projeto para armazenamento persistente permanece fixo depois que o projeto é criado.

A Zenifra injeta alguma ENV automaticamente?

Sim. Um exemplo é ZENIFRA_INSTANCE_VERSION, que informa a versão da instância publicada e pode ser usada no código para distinguir logs e releases.

O que acontece com os dados ao parar o projeto?

  • Dados persistentes: Mantidos
  • Dados efêmeros: Apagados

Recomendamos usar armazenamento persistente para dados importantes.