mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-15 22:39:40 +02:00
- Add nutriphi-database package with Drizzle ORM - meals and nutrition_goals schemas - PostgreSQL 16 Docker setup - Drizzle Kit configuration - Migrate backend from Supabase to Drizzle - Add DatabaseModule with connection pooling - Add StorageService for Hetzner Object Storage (S3-compatible) - Update MealsService with Drizzle queries - Add /api/meals/upload endpoint for image upload + analysis - Update web app to use backend for uploads - Remove Supabase Storage direct upload - Update uploadService to send images to backend - Remove Supabase dependencies from package.json - Simplify hooks.server.ts - Add Coolify deployment configuration - Dockerfile for production build - docker-compose.coolify.yml 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
31 lines
883 B
YAML
31 lines
883 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
nutriphi-backend:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: nutriphi-backend
|
|
restart: unless-stopped
|
|
environment:
|
|
- NODE_ENV=production
|
|
- PORT=${PORT:-3002}
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- GEMINI_API_KEY=${GEMINI_API_KEY}
|
|
- S3_ENDPOINT=${S3_ENDPOINT}
|
|
- S3_ACCESS_KEY_ID=${S3_ACCESS_KEY_ID}
|
|
- S3_SECRET_ACCESS_KEY=${S3_SECRET_ACCESS_KEY}
|
|
- S3_BUCKET_NAME=${S3_BUCKET_NAME}
|
|
- S3_REGION=${S3_REGION:-fsn1}
|
|
- S3_PUBLIC_URL=${S3_PUBLIC_URL}
|
|
- MANACORE_AUTH_URL=${MANACORE_AUTH_URL}
|
|
ports:
|
|
- "${PORT:-3002}:${PORT:-3002}"
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:${PORT:-3002}/api/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 40s
|
|
labels:
|
|
- "coolify.managed=true"
|