53 lines
1.3 KiB
YAML
53 lines
1.3 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
app:
|
|
container_name: flyer-crawler-dev
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.dev
|
|
volumes:
|
|
# Mount the current directory to /app in the container
|
|
- .:/app
|
|
# Create a volume for node_modules to avoid conflicts with Windows host
|
|
# and improve performance.
|
|
- node_modules_data:/app/node_modules
|
|
ports:
|
|
- '3000:3000' # Frontend (Vite default)
|
|
- '3001:3001' # Backend API
|
|
environment:
|
|
- NODE_ENV=development
|
|
- DB_HOST=postgres
|
|
- DB_USER=postgres
|
|
- DB_PASSWORD=postgres
|
|
- DB_NAME=flyer_crawler_dev
|
|
- REDIS_URL=redis://redis:6379
|
|
# Add other secrets here or use a .env file
|
|
depends_on:
|
|
- postgres
|
|
- redis
|
|
# Keep container running so VS Code can attach
|
|
command: tail -f /dev/null
|
|
|
|
postgres:
|
|
image: docker.io/library/postgis/postgis:15-3.4
|
|
container_name: flyer-crawler-postgres
|
|
ports:
|
|
- '5432:5432'
|
|
environment:
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
POSTGRES_DB: flyer_crawler_dev
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
|
|
redis:
|
|
image: docker.io/library/redis:alpine
|
|
container_name: flyer-crawler-redis
|
|
ports:
|
|
- '6379:6379'
|
|
|
|
volumes:
|
|
postgres_data:
|
|
node_modules_data:
|