docker-compose.ymlā¢1.77 kB
services:
# Ultralytics AI Container
ultralytics-container:
build:
context: .
dockerfile: Dockerfile.ultralytics
container_name: ultralytics-container
volumes:
- ./ultralytics:/ultralytics
- ./workspace:/workspace
- ./YOLO_MultiLevel_Datasets:/ultralytics/YOLO_MultiLevel_Datasets:ro
- custom_datasets:/ultralytics/custom_datasets
- trained_models:/workspace/trained_models
environment:
- NVIDIA_VISIBLE_DEVICES=all
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
- CUDA_VISIBLE_DEVICES=0
runtime: nvidia
gpus: all
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
ports:
- "8501:8501" # Streamlit
- "8888:8888" # Jupyter Lab
- "6006:6006" # TensorBoard
command: bash -c "/usr/local/bin/startup.sh || sleep infinity"
stdin_open: true
tty: true
shm_size: '8gb'
restart: unless-stopped
networks:
- ultralytics-network
# MCP Server for N8N Integration
mcp-connector-container:
build:
context: .
dockerfile: Dockerfile.mcp-connector
container_name: mcp-connector-container
ports:
- "8092:8092" # MCP Server
environment:
- NODE_ENV=production
- PORT=8092
- ULTRALYTICS_CONTAINER=ultralytics-container
volumes:
- ./src:/app/src:ro
- /var/run/docker.sock:/var/run/docker.sock
networks:
- ultralytics-network
restart: unless-stopped
depends_on:
- ultralytics-container
command: ["npm", "start"]
volumes:
custom_datasets:
driver: local
trained_models:
driver: local
networks:
ultralytics-network:
driver: bridge