- Migrated from Express.js to Next.js 15 with TypeScript - Added Docker Compose v2 with multi-stage builds - Implemented Docker Bake support for improved builds - Created professional component structure with Tailwind CSS - Added enhanced visual design with glass morphism effects - Improved responsive layout and better UX flow - Updated all dependencies and configurations - Added proper TypeScript types and modern practices - Created development scripts for easy container management - Cleaned up excessive animations for better user experience
55 lines
1.1 KiB
YAML
55 lines
1.1 KiB
YAML
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
target: development
|
|
ports:
|
|
- "3444:3444"
|
|
environment:
|
|
- NODE_ENV=development
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- HUGGING_FACE_TOKEN=${HUGGING_FACE_TOKEN}
|
|
volumes:
|
|
- .:/app
|
|
- /app/node_modules
|
|
- /app/.next
|
|
restart: unless-stopped
|
|
networks:
|
|
- kidsai-network
|
|
|
|
app-prod:
|
|
build:
|
|
context: .
|
|
target: production
|
|
ports:
|
|
- "3445:3444"
|
|
environment:
|
|
- NODE_ENV=production
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- HUGGING_FACE_TOKEN=${HUGGING_FACE_TOKEN}
|
|
restart: unless-stopped
|
|
networks:
|
|
- kidsai-network
|
|
profiles:
|
|
- production
|
|
|
|
# Optional: Add a database if you decide to use Prisma
|
|
# database:
|
|
# image: postgres:15-alpine
|
|
# environment:
|
|
# POSTGRES_DB: kidsai
|
|
# POSTGRES_USER: kidsai
|
|
# POSTGRES_PASSWORD: ${DB_PASSWORD}
|
|
# volumes:
|
|
# - postgres_data:/var/lib/postgresql/data
|
|
# networks:
|
|
# - kidsai-network
|
|
# restart: unless-stopped
|
|
|
|
networks:
|
|
kidsai-network:
|
|
driver: bridge
|
|
|
|
# volumes:
|
|
# postgres_data:
|