Skip to main content

Produção


Para rodar o projeto em produção, são necessários dois arquivos de ambiente. O primeiro deles 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.production

A falta de um desses arquivos 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-deploy:5173api: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 /eclipse

# 🌐 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-deploy:5173api: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

Rodando Docker

Lembre-se de criar os arquivos .env na pasta raíz 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.).