services: postgres: image: postgres:15-alpine container_name: portal_transparencia_db environment: POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-password} POSTGRES_DB: ${POSTGRES_DB:-portal_db} volumes: - postgres_data:/var/lib/postgresql/data networks: - internal restart: unless-stopped minio: image: minio/minio container_name: portal_transparencia_minio environment: MINIO_ROOT_USER: ${MINIO_ROOT_USER:-admin} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-password123} command: server /data --console-address ":9001" volumes: - minio_data:/data networks: - internal restart: unless-stopped app: build: context: . dockerfile: Dockerfile container_name: portal_transparencia_app environment: DATABASE_URL: postgres://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-password}@postgres:5432/${POSTGRES_DB:-portal_db} MINIO_ENDPOINT: minio MINIO_PORT: "9000" MINIO_ACCESS_KEY: ${MINIO_ROOT_USER:-admin} MINIO_SECRET_KEY: ${MINIO_ROOT_PASSWORD:-password123} MINIO_USE_SSL: "false" MINIO_BUCKET: ${MINIO_BUCKET:-portal-transparencia} JWT_SECRET: ${JWT_SECRET:-supersecretkey123456789} NODE_ENV: production depends_on: - postgres - minio networks: - internal - dokploy-network restart: unless-stopped volumes: postgres_data: minio_data: networks: internal: driver: bridge dokploy-network: external: true