Produção
Para rodar o projeto em produção, sãoé necessários doisum arquivosarquivo de ambiente. Oque primeirodeve delespossuir o nome ".env" e deve ser colocado na pasta raiz do projeto com o nome .env e o segundo deve ser colocado dentro da pasta /eclipse como nome .env.productionECLIPSE-V3
A falta dedesse um desses arquivosarquivo de ambiente pode acarretar em erros inesperados de build do docker!
.env:
# 🌐 API
API_PORT=3008
# 🛢️ MongoDB
MONGO_INITDB_ROOT_USERNAME=root
MONGO_INITDB_ROOT_PASSWORD=admin123
MONGO_INITDB_DATABASE=eclipse-db-deploy
CONNECTION_STRING=mongodb://root:admin123@eclipse-db-deploy: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,http://localhost:3008
# 💻 Next.js
NEXT_PUBLIC_APP_VERSION=3.1.05.25
NEXT_PUBLIC_API_URL=http://localhost:3008/api/v1
NEXTAUTH_URL=http://localhost
# 👮 Admin Inicial
BASE_ADMIN_PASSWORD=admin123
[email protected]
# ✉️ E-mail
[email protected]
PASSWORD_USER=senha-gerada
# ⚙️ Ambiente
NODE_ENV=production.env.production:
Lembre de adicionar este arquivo na pasta /eclipseECLIPSE-V3
.env:
# 🌐 API
API_PORT=3008
# 🛢️ MongoDB
MONGO_INITDB_ROOT_USERNAME=root
MONGO_INITDB_ROOT_PASSWORD=admin123
MONGO_INITDB_DATABASE=eclipse-db-deploy
CONNECTION_STRING=mongodb://root:admin123@eclipse-db-deploy: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,http://localhost:3008
# 💻 Next.js
NEXT_PUBLIC_APP_VERSION=3.1.05.25
NEXT_PUBLIC_API_URL=http://localhost/api/v1
NEXTAUTH_URL=http://localhost
# 👮 Admin Inicial
BASE_ADMIN_PASSWORD=senha
[email protected]
# ✉️ E-mail
[email protected]
PASSWORD_USER=senha-gerada
# ⚙️ Ambiente
NODE_ENV=production
----------------------------------------------------------------------------------------------------------------------------
#novo env
# 🛢️ MONGO (usado pelo db)
MONGO_INITDB_ROOT_USERNAME=root #Nome do usuário root do banco
MONGO_INITDB_ROOT_PASSWORD=i38LtMdGfjv08U0mSenha-forte # senha gerada aleatoriamente
MONGO_INITDB_DATABASE=eclipse-db-deploy
# 🌐 API
API_PORT=3008
CONNECTION_STRING=mongodb://root:i38LtMdGfjv08U0m@eclipse-Senha-forte@eclipsev3-db-deploy:27017/eclipse?eclipse-db-deploy?authSource=admin
# 🔐 Segurança
JWT_SECRET=hwqojkeh91436519y123yr80795412h5o30-69Senha-forte # Necessário gerar uma chave forte
NEXTAUTH_SECRET=hwqojkeh91436519y123yr80795412h5o30-69Senha-forte # Necessário gerar uma chave forte
# 🌐 CORS
CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:5173,http://localhost:80,http://localhost,http://eclipse-api,http://eclipse-api:5173,http://localhost:3008
# 💻 Next.js
NEXT_PUBLIC_APP_VERSION=3.3.09.25
NEXT_PUBLIC_API_URL=http://localhost:3008/api # trocar conforme o domínio
NEXTAUTH_URL=http://localhost:3000 # trocar conforme o domínio
#Exemplo de domínio -> NEXT_PUBLIC_API_URL=https://eclipse.defensoria.df.gov.br/api/v1
# -> NEXTAUTH_URL=https://eclipse.defensoria.df.gov.br
# 👮 Admin Inicial
BASE_ADMIN_PASSWORD=X846RDAobkaxWY3HSenha-forte #Necessário gerar uma senha forte
[email protected]
# ✉️ E-mail
[email protected]
PASSWORD_USER=senha-gerada
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_SECURE=false
# ⚙️ Ambiente
NODE_ENV=production
Rodando Docker
Lembre-se de criar oso arquivosarquivo .env na pasta raízz! e o .env.production na pasta /eclipse antes!
sudo docker compose 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.).