Configurar las variables
Las variables de entorno pertenecen a una sola aplicación. Se mantienen tras reinicios y commits, pero una subida nueva crea una aplicación nueva sin ellas, así que vuelve a definirlas allí.- Dashboard
- CLI
- VS Code
- API
- Abre tu aplicación en el dashboard y ve a Ajustes → Variables de entorno.
- Agrega cada clave y valor, o importa un archivo
.envexistente. - Haz clic en Guardar. El dashboard pregunta si quieres reiniciar la aplicación: reiníciala para que tome los nuevos valores.
Léelas en tu código
Variables que Square Cloud define por ti
Tu aplicación inicia con estas variables ya definidas:
Como
NODE_ENV es production, npm install omite las devDependencies. Si tu comando START hace el build del proyecto (por ejemplo con typescript o vite), lista esas herramientas de build en dependencies dentro de package.json.
Cómo llegan las variables a tu aplicación
Square Cloud guarda las variables en un archivo.squarecloud/.env dentro de la aplicación y las carga con un shell cada vez que la aplicación inicia, antes de instalar las dependencias y de ejecutar tu comando START o tu archivo MAIN. Dos consecuencias:
- Los nombres deben usar letras, dígitos y guiones bajos, y no empezar por un dígito.
- Los valores con espacios o caracteres del shell como
$,&,;o|deben ir entre comillas, o el shell los corta o los expande. El dashboard ysquarecloud app env setlos ponen entre comillas por ti. En la extensión de VS Code o en la API, envuelve tú mismo ese valor en comillas simples: escribe'p@ss word$1', o envía"PASSWORD": "'p@ss word$1'"en el cuerpo de la API.
STATIC_APP_ENV_NOT_SUPPORTED.
Mantén los secretos fuera de tu subida
Si tu código carga un archivo.env por su cuenta (por ejemplo con dotenv), ese archivo tiene que estar en la subida. Si listas .env en squarecloud.ignore, la aplicación inicia sin sus secretos, y un bot falla con un token inválido.
La configuración más segura: pasa cada valor de tu .env a las variables de entorno de la aplicación, como se muestra arriba. Una vez definidas, puedes dejar .env fuera de la subida y fuera de tu repositorio de Git. dotenv no sobrescribe las variables que ya existen, así que el mismo código sigue funcionando en tu máquina y en Square Cloud.
Próximos pasos
Archivo de configuración
Define
MAIN, MEMORY, START y los demás campos de squarecloud.app.Aloja un bot de Discord
Haz deploy de un bot que lee su token de una variable de entorno.
Errores de bots de Discord
Corrige un token inválido, intents que faltan y bots que se desconectan.
Errores de conexión a bases de datos
Conéctate con un
DATABASE_URL y la configuración SSL correcta.
