Skip to main content

Desenvolvimento


Para rodar o projeto em desenvolvimento, é necessário um arquivo de ambiente que deve ser colocado na pasta raiz do projeto com o nome .env.dev

A falta desse arquivo de ambiente irá acarretar em erro de build do docker!


.env.dev: 

# 🌐 API
API_PORT=3008

# 🛢️ MongoDB
MONGO_INITDB_ROOT_USERNAME=root
MONGO_INITDB_ROOT_PASSWORD=admin123
MONGO_INITDB_DATABASE=eclipse-db
CONNECTION_STRING=mongodb://root:admin123@eclipse-db:27017/eclipse?authSource=admin

# 🔐 Segurança
JWT_SECRET=secret
NEXTAUTH_SECRET=secret

# 🌐 CORS
CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:5173,http://localhost:80,http://localhost,http://eclipse-api,http://eclipse-api:5173

# 💻 Next.js
NEXT_PUBLIC_APP_VERSION=3.1.05.25
NEXT_PUBLIC_API_URL=http://localhost:3008/api
NEXTAUTH_URL=http://localhost:3000

# 👮 Admin Inicial
BASE_ADMIN_PASSWORD=admin123
[email protected]

# ✉️ E-mail
[email protected]
PASSWORD_USER=senha-gerada

# ⚙️ Ambiente
NODE_ENV=development

Rodando Docker

Lembre-se de criar os arquivos .env na pasta raíz e o .env.production na pasta /eclipse antes!


sudo docker compose -f docker-compose.dev.yaml up --build

AVISOS IMPORTANTES

❗ Não utilize os valores padrões em produção! 

Antes de subir o sistema para qualquer ambiente real, substitua os seguintes campos por valores seguros e válidos:
  • 🔐 Segurança (Criptografia):
JWT_SECRET e NEXTAUTH_SECRET → Gere uma chave segura com pelo menos 32 caracteres.

  • 👮 Corregedor Inicial:
BASE_ADMIN_EMAIL→ Altere para um e-mail real e controlado por você.
BASE_ADMIN_PASSWORD→ Crie uma senha forte.

  • ✉️ Envio de E-mails:
EMAIL_USER → Um e-mail Gmail válido.
PASSWORD_USER → A senha de app gerada em https://myaccount.google.com/apppasswords com a verificação em duas etapas ativada.
  • 🛢️ Atenção com o MongoDB:
Se você alterar os valores de MONGO_INITDB_ROOT_USERNAME, MONGO_INITDB_ROOT_PASSWORD ou MONGO_INITDB_DATABASE, lembre-se de atualizar também o valor da CONNECTION_STRING manualmente.

❌ O arquivo .env não suporta interpolação de variáveis. Por isso, a string de conexão não é gerada automaticamente com base nos valores acima.

🔐 Nunca compartilhe arquivos .env com informações sensíveis publicamente (GitHub, fóruns etc.).