69 lines
1.5 KiB
YAML
69 lines
1.5 KiB
YAML
|
|
version: '3.8'
|
||
|
|
|
||
|
|
services:
|
||
|
|
ollama:
|
||
|
|
image: ollama/ollama:latest
|
||
|
|
container_name: code-forge-ollama
|
||
|
|
ports:
|
||
|
|
- "11434:11434"
|
||
|
|
volumes:
|
||
|
|
- ollama_models:/root/.ollama
|
||
|
|
environment:
|
||
|
|
- OLLAMA_NUM_PARALLEL=1
|
||
|
|
- OLLAMA_MAX_LOADED_MODELS=1
|
||
|
|
- OLLAMA_KEEP_ALIVE=5m
|
||
|
|
networks:
|
||
|
|
- code-forge-network
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
chromadb:
|
||
|
|
image: chromadb/chroma:latest
|
||
|
|
container_name: code-forge-chromadb
|
||
|
|
ports:
|
||
|
|
- "8000:8000"
|
||
|
|
volumes:
|
||
|
|
- chroma_data:/chroma/chroma
|
||
|
|
environment:
|
||
|
|
- IS_PERSISTENT=TRUE
|
||
|
|
- ANONYMIZED_TELEMETRY=FALSE
|
||
|
|
networks:
|
||
|
|
- code-forge-network
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
app:
|
||
|
|
build:
|
||
|
|
context: .
|
||
|
|
dockerfile: Dockerfile
|
||
|
|
container_name: code-forge-app
|
||
|
|
ports:
|
||
|
|
- "8501:8501" # Streamlit UI
|
||
|
|
- "8051:8051" # MCP Server
|
||
|
|
volumes:
|
||
|
|
- ./app:/workspace/app
|
||
|
|
- ./mcp_server:/workspace/mcp_server
|
||
|
|
- uploads:/workspace/data/uploads
|
||
|
|
# Uncomment to mount a local directory for bulk import:
|
||
|
|
# - /path/to/your/docs:/workspace/mounted_docs:ro
|
||
|
|
environment:
|
||
|
|
- OLLAMA_HOST=http://ollama:11434
|
||
|
|
- CHROMA_HOST=chromadb
|
||
|
|
- CHROMA_PORT=8000
|
||
|
|
- MCP_SERVER_HOST=0.0.0.0
|
||
|
|
- MCP_SERVER_PORT=8051
|
||
|
|
networks:
|
||
|
|
- code-forge-network
|
||
|
|
depends_on:
|
||
|
|
- ollama
|
||
|
|
- chromadb
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
networks:
|
||
|
|
code-forge-network:
|
||
|
|
driver: bridge
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
ollama_models:
|
||
|
|
chroma_data:
|
||
|
|
uploads:
|
||
|
|
|