-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
77 lines (64 loc) · 2.67 KB
/
docker-compose.yml
File metadata and controls
77 lines (64 loc) · 2.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
services:
# ===== Backend Application =====
outfitlab-backend:
build:
context: .
dockerfile: Dockerfile.multistage
ports:
- "${SERVER_PORT:-8080}:8080"
environment:
# Profile para configuración cloud
- SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE:-cloud}
# Database connection (PostgreSQL Cloud - Render)
- SPRING_DATASOURCE_RENDER_URL=${SPRING_DATASOURCE_RENDER_URL}
- SPRING_DATASOURCE_RENDER_USERNAME=${SPRING_DATASOURCE_RENDER_USERNAME}
- SPRING_DATASOURCE_RENDER_PASSWORD=${SPRING_DATASOURCE_RENDER_PASSWORD}
# Security
- SPRING_SECURITY_USER=${SPRING_SECURITY_USER}
- SPRING_SECURITY_PASSWORD=${SPRING_SECURITY_PASSWORD}
# AWS S3 Configuration
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_REGION=${AWS_REGION}
- AWS_BUCKET_NAME=${AWS_BUCKET_NAME}
# JVM and Logging
- JAVA_OPTS=${JAVA_OPTS}
- LOG_LEVEL_ROOT=${LOG_LEVEL_ROOT}
- LOG_LEVEL_OUTFITLAB=${LOG_LEVEL_OUTFITLAB}
# File upload limits
- MAX_FILE_SIZE=${MAX_FILE_SIZE}
- MAX_REQUEST_SIZE=${MAX_REQUEST_SIZE}
# API Keys
- FASHION_IA_SECRET_KEY=${FASHION_IA_SECRET_KEY}
- MP_ACCESS_TOKEN=${MP_ACCESS_TOKEN}
- GEMINI_API_KEY=${GEMINI_API_KEY}
# Backend API URL (for email links)
- BACKEND_API_URL=${BACKEND_API_URL:-http://localhost:8080}
# Webhook URL for Mercado Pago
- WEBHOOK_BASE_URL=${WEBHOOK_BASE_URL:-http://localhost:8080}
# JWT Authentication
- JWT_SECRET=${JWT_SECRET:-mySecretKeyForJWT123456789012345678901234567890}
- TOKEN_EXPIRATION=${TOKEN_EXPIRATION:-86400000}
- REFRESH_EXPIRATION=${REFRESH_EXPIRATION:-604800000}
# Frontend Configuration
- FRONTEND_BASE_URL=${FRONTEND_BASE_URL:-http://localhost:5173}
- FRONTEND_ORIGINS=${FRONTEND_ORIGINS:-http://localhost:5173,https://*.vercel.app}
# Gmail/Email Configuration
- SPRING_MAIL_HOST=${SPRING_MAIL_HOST:-smtp.gmail.com}
- SPRING_MAIL_PORT=${SPRING_MAIL_PORT:-587}
- SPRING_MAIL_USERNAME=${SPRING_MAIL_USERNAME:-tpi8bits@gmail.com}
- SPRING_MAIL_PASSWORD=${SPRING_MAIL_PASSWORD}
- SPRING_MAIL_FROM=${SPRING_MAIL_FROM:-tpi8bits@gmail.com}
restart: unless-stopped
networks:
- outfitlab-network
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/actuator/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# ===== Networks =====
networks:
outfitlab-network:
driver: bridge