Defina as variáveis
As variáveis de ambiente pertencem a uma aplicação. Elas sobrevivem a reinícios e commits, mas um novo upload cria uma nova aplicação sem elas, então defina-as de novo nela.- Dashboard
- CLI
- VS Code
- API
- Abra a sua aplicação no dashboard e vá em Configurações → Variáveis de Ambiente.
- Adicione cada chave e valor, ou importe um arquivo
.envexistente. - Clique em Salvar. O dashboard pergunta se você quer reiniciar a aplicação: reinicie para que ela receba os novos valores.
Leia as variáveis no seu código
Variáveis que a Square Cloud define para você
A sua aplicação já inicia com estas variáveis definidas:
Como o
NODE_ENV é production, o npm install pula as devDependencies. Se o seu comando START faz o build do projeto (por exemplo, com typescript ou vite), liste essas ferramentas de build em dependencies no package.json.
Como as variáveis chegam à sua aplicação
A Square Cloud guarda as variáveis em um arquivo.squarecloud/.env dentro da aplicação e as carrega com um shell toda vez que a aplicação inicia, antes de as dependências serem instaladas e de o seu comando START ou arquivo MAIN rodar. Duas consequências:
- Nomes devem usar letras, dígitos e underscores, e não começar com um dígito.
- Valores com espaços ou caracteres de shell, como
$,&,;ou|, precisam estar entre aspas; caso contrário, o shell os corta ou os expande. O dashboard e osquarecloud app env setcolocam as aspas para você. Na extensão para VS Code ou na API, envolva esse valor em aspas simples você mesmo: digite'p@ss word$1', ou envie"PASSWORD": "'p@ss word$1'"no corpo da requisição.
STATIC_APP_ENV_NOT_SUPPORTED.
Mantenha os segredos fora do seu upload
Se o seu código carrega um arquivo.env por conta própria (por exemplo, com o dotenv), esse arquivo precisa estar no upload. Listar o .env no squarecloud.ignore, nesse caso, inicia a aplicação sem os segredos, e um bot falha com token inválido.
A configuração mais segura: mova cada valor do seu .env para as variáveis de ambiente da aplicação, como mostrado acima. Depois que elas estiverem definidas, você pode deixar o .env fora do upload e do seu repositório Git. O dotenv não sobrescreve variáveis que já existem, então o mesmo código continua funcionando na sua máquina e na Square Cloud.
Próximos passos
Arquivo de configuração
Defina
MAIN, MEMORY, START e os outros campos do squarecloud.app.Hospede um bot do Discord
Faça deploy de um bot que lê o token de uma variável de ambiente.
Erros do bot do Discord
Corrija um token inválido, intents ausentes e bots que ficam offline.
Erros de conexão com banco de dados
Conecte com uma
DATABASE_URL e as configurações de SSL certas.
