wishli-api/docker-compose.yaml
2025-03-23 20:05:51 +03:00

62 lines
1.3 KiB
YAML

version: '3.8'
services:
app:
build:
context: .
dockerfile: Dockerfile
container_name: wish-list-api
ports:
- "8080:8080"
environment:
- MONGODB_URI=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@mongo:27017/${MONGO_DATABASE}
env_file:
- .env
depends_on:
- mongo
restart: unless-stopped
networks:
- app-network
tests:
build:
context: .
dockerfile: Dockerfile
container_name: wish-list-api-tests
environment:
- MONGODB_URI=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@mongo:27017/${MONGO_DATABASE}
- RUN_INTEGRATION_TESTS=true
env_file:
- .env
depends_on:
- mongo
volumes:
- ./coverage:/app/coverage
command: sh -c "chmod +x /app/scripts/run_tests.sh && /app/scripts/run_tests.sh"
networks:
- app-network
mongo:
image: mongo:latest
container_name: mongodb
restart: unless-stopped
environment:
- MONGO_INITDB_ROOT_USERNAME=${MONGO_USER}
- MONGO_INITDB_ROOT_PASSWORD=${MONGO_PASSWORD}
- MONGO_INITDB_DATABASE=${MONGO_DATABASE}
env_file:
- .env
ports:
- "27017:27017"
volumes:
- mongo_data:/data/db
networks:
- app-network
networks:
app-network:
driver: bridge
volumes:
mongo_data:
driver: local