services: # Next.js Application (Development) - Using External Database app: image: jaejadle-app-dev build: context: ../../services/nextjs dockerfile: ../../deploy/docker/Dockerfile.dev container_name: jaejadle-app-dev restart: unless-stopped labels: kompose.namespace: jaejadle-dev ports: - "3004:3000" env_file: - ../../.env environment: - NODE_ENV=development networks: - jaejadle-network-dev volumes: - ../../services/nextjs:/app - /app/node_modules - /app/.next - app_logs_dev:/app/logs healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"] interval: 30s timeout: 10s retries: 3 start_period: 40s command: > sh -lc "npx prisma generate && npx prisma db push && npm run dev" # Prisma Studio - Connects to External Database prisma-studio: image: jaejadle-app-dev container_name: jaejadle-prisma-studio restart: unless-stopped labels: kompose.namespace: jaejadle-dev ports: - "5557:5555" env_file: - ../../.env environment: - NODE_ENV=development networks: - jaejadle-network-dev volumes: - ../../services/nextjs:/app - /app/node_modules command: npx prisma studio --port 5555 --hostname 0.0.0.0 volumes: # Named volumes for data persistence app_logs_dev: driver: local networks: jaejadle-network-dev: driver: bridge ipam: config: - subnet: 172.25.0.0/16