Variáveis de ambiente fora do seu código

Guarde tokens, senhas e strings de conexão nas configurações de cada aplicação. Os valores ficam ocultos na tela, um .env entra com uma colagem e uma reinicialização aplica a mudança sem um novo upload.

Até 256 variáveis por aplicação, em todos os planos. Também pela CLI e pela API.

Como funciona

As variáveis pertencem à aplicação, não aos arquivos que você envia. Mude uma e a próxima inicialização já usa o novo valor.

  1. 1

    Adicione ou cole

    Digite uma chave e o valor, cole linhas KEY=valor num campo de chave ou importe um arquivo .env.

  2. 2

    Salve

    Um único salvamento envia a lista inteira. Valores que o shell cortaria ou expandiria seguem entre aspas.

  3. 3

    Reinicie

    Logo depois de salvar, a dashboard oferece a reinicialização. A aplicação inicia com os novos valores, sem um novo upload.

Segredos ficam ocultos na tela

O editor nas configurações da aplicação oculta cada valor até você pedir para ver e mantém juntas as chaves relacionadas.

  • Valores ocultos

    Os valores aparecem como pontos. Revele um pelo olho, copie sem revelar ou clique nele para editar.

    • Cada edição é confirmada ou cancelada separadamente
    • Segure Shift para remover uma linha com um clique
  • Agrupadas por prefixo

    Chaves com o mesmo prefixo, como DB_HOST e DB_USER, aparecem juntas, em ordem alfabética.

    • Busca por chave quando a lista passa de 15
    • Um aviso aparece quando restam poucas vagas
  • Padrões da Square Cloud

    HOST, PORT e SQUARECLOUD_APP_ID vêm com toda aplicação, somente leitura e com uma nota sobre a função de cada uma.

    • HOST 0.0.0.0 e PORT 80 para HTTP
    • O ID da própria aplicação, lido pelo seu código
  • Até 256 variáveis por aplicação
  • Chaves de até 1.024 caracteres, valores de até 4.096
  • Num workspace, só administradores abrem o editor
  • Incluído em todos os planos

Traga o .env que você já tem

Importe um arquivo .env e revise antes de qualquer mudança: chaves novas, chaves que seriam substituídas e linhas que não podem entrar, cada uma com o número da linha e o motivo.

  • Cole linhas inteiras

    Cole várias linhas KEY=valor num campo de chave e cada uma vira uma linha. Uma chave que você já tem recebe o valor colado.

    • Comentários e o prefixo export são tratados
    • Colar numa linha preenchida mantém aquela variável
  • Defina já no deploy

    O formulário de deploy também recebe variáveis e, quando o projeto tem um .env.example, oferece essas chaves para você preencher.

    • Também lê .env.sample, .env.template e .env.dist
    • Deixa HOST e PORT com a Square Cloud
  • Exporte ou copie

    Baixe todas as variáveis num arquivo de texto KEY=VALUE, ou copie todas de uma vez, para levar a outra aplicação.

    • Os valores saem entre aspas, prontos para carregar
    • Linhas sem chave ficam de fora

Os valores chegam ao código como você digitou

Sua aplicação carrega as variáveis por meio de um shell, onde um espaço, um $ ou um ; pode cortar ou alterar um valor. O editor coloca esses valores entre aspas para você.

  • Aspas onde precisa

    Um valor com espaços ou caracteres como $, &, ;, | ou ) vai entre aspas simples quando você confirma, importa ou salva.

  • Aspas arriscadas recusadas

    Aspas duplas em volta de um valor com $ deixariam o shell expandi-lo, então o editor pede para removê-las ou usar aspas simples.

  • Chaves sempre válidas

    Espaços numa chave viram sublinhados, e uma chave não pode se repetir. Numa importação, a chave precisa começar com uma letra ou _.

Pelo terminal e pela API

As mesmas variáveis estão ao alcance da CLI, da GitHub Action, da extensão do VS Code e da API REST.

CLI da Square Cloud
squarecloud app env set DB_HOST=10.0.0.4 "GREETING=hi there"squarecloud app env set --from-file .envsquarecloud app env list

Desde a versão 3.1.1, a CLI coloca entre aspas os valores com espaços ou símbolos. Veja tudo o que a CLI faz.

API REST
curl -X POST "https://api.squarecloud.app/v2/apps/$APP_ID/envs" \  -H "Authorization: $SQUARECLOUD_API_KEY" \  -H "Content-Type: application/json" \  -d '{"envs": {"NODE_ENV": "production", "LOG_LEVEL": "info"}}'curl -X POST "https://api.squarecloud.app/v2/apps/$APP_ID/restart" \  -H "Authorization: $SQUARECLOUD_API_KEY"

Envie os valores como o shell deve lê-los, entre aspas simples quando tiverem espaços ou símbolos. Uma reinicialização os aplica.

  • GET
    /v2/apps/{appId}/envs

    Lista as variáveis de ambiente da aplicação.

  • POST
    /v2/apps/{appId}/envs

    Adiciona variáveis ou altera as existentes. As demais continuam como estão.

  • PUT
    /v2/apps/{appId}/envs

    Substitui todas as variáveis pelas que você enviar.

  • DELETE
    /v2/apps/{appId}/envs

    Remove as variáveis que você indicar.

  • As chaves de API podem ser limitadas a envs:read ou envs:write e a uma única aplicação.
Referência da API

Dúvidas sobre variáveis de ambiente

O que são variáveis de ambiente na Square Cloud?

São pares de chave e valor guardados nas configurações da sua aplicação e carregados quando ela inicia. Elas mantêm tokens, senhas e strings de conexão fora do seu código e fora dos arquivos que você envia. Cada aplicação tem sua própria lista, de até 256 variáveis.

Preciso fazer deploy de novo depois de mudar uma variável?

Não. Salve a mudança e reinicie a aplicação: ela inicia com os novos valores, sem um novo upload. Até reiniciar, o processo atual mantém os valores com que começou.

Quais variáveis a Square Cloud fornece?

HOST (0.0.0.0), PORT (80) e SQUARECLOUD_APP_ID, o ID da própria aplicação. Elas aparecem somente leitura no topo do editor. Uma aplicação web que escuta nesse host e nessa porta fica acessível por HTTP.

Como guardo um valor com espaços, aspas ou $?

Digite como ele é. A dashboard e a CLI colocam esses valores entre aspas simples, para o shell carregá-los sem alteração. Pela API, envie-os já entre aspas simples. Evite aspas duplas em volta de um valor com $: o shell o expandiria.

Posso manter um arquivo .env no projeto?

Pode, mas prefira importá-lo na dashboard: as variáveis definidas lá têm prioridade sobre os valores desse arquivo. Para deixar o arquivo fora dos uploads, liste-o no squarecloud.ignore, que a CLI e a extensão do VS Code leem.

Quem pode ver os valores?

Na sua conta, só você. Num workspace, só membros com permissão de administrador abrem o editor. Uma chave de API precisa do escopo envs:read, ou de acesso total, para lê-los.

Quantas variáveis uma aplicação pode ter?

Até 256, com chaves de até 1.024 caracteres e valores de até 4.096. O editor avisa quando restam poucas vagas e não salva acima do limite.

Sites estáticos têm variáveis de ambiente?

Não. Um site estático é servido como arquivos, sem um processo para lê-las, por isso as configurações dele não têm a aba de variáveis. Elas são para aplicações com runtime, como Node.js, Python, Java, Go ou Rust.

Um plano para cada fase do seu projeto

Comece pequeno e escale quando precisar, sem contratos de fidelidade.

4,9 de 5 · 402 avaliações no Google + TrustpilotTrustpilot

Hospedado em datacenter parceiro com certificações
Tier 3ISO 27001SOC 2 Type IIProteção DDoS Always-On
Conheça nossa infraestrutura

Pronto para escalar seu projeto?

Junte-se aos mais de 500 mil desenvolvedores que já usaram a Square Cloud para hospedar seus projetos.

  • Preços previsíveis
  • Sem surpresas na fatura
  • Deploy em segundos
  • Alta disponibilidade
  • Escala com estabilidade
  • Reinício automático
  • SSL e segurança inclusos
  • Containers isolados