-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
67 lines (64 loc) · 1.82 KB
/
Copy pathdocker-compose.yml
File metadata and controls
67 lines (64 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# QA-MCP Docker Compose Configuration
#
# Usage:
# docker-compose up # Start in stdio mode (default)
# docker-compose --profile dev up # Start with development tools
version: '3.8'
services:
# Main QA-MCP service (stdio mode)
qa-mcp:
build:
context: .
dockerfile: Dockerfile
target: production
image: atakanemree/qa-mcp:${VERSION:-2.1.1}
container_name: qa-mcp
stdin_open: true
tty: true
environment:
- QA_MCP_LOG_LEVEL=${QA_MCP_LOG_LEVEL:-INFO}
- QA_MCP_ENABLE_WRITE_TOOLS=${QA_MCP_ENABLE_WRITE_TOOLS:-false}
- QA_MCP_AUDIT_LOG_ENABLED=${QA_MCP_AUDIT_LOG_ENABLED:-true}
# Security: run as non-root
user: "1000:1000"
# Resource limits
deploy:
resources:
limits:
cpus: '1'
memory: 512M
reservations:
cpus: '0.25'
memory: 128M
# No network needed for stdio mode
network_mode: none
# Read-only filesystem for security
read_only: true
# Security options
security_opt:
- no-new-privileges:true
# Development service with additional tools
qa-mcp-dev:
profiles:
- dev
build:
context: .
dockerfile: Dockerfile
target: development
image: atakanemree/qa-mcp:${VERSION:-2.1.1}-dev
container_name: qa-mcp-dev
stdin_open: true
tty: true
environment:
- QA_MCP_LOG_LEVEL=DEBUG
- QA_MCP_AUDIT_LOG_ENABLED=true
# Write tools are deliberately left off: they now require a configured
# Jira tenant and are validated at startup, and this service only runs
# the test suite.
volumes:
# Mount source for hot reload during development
- ./src/qa_mcp:/app/src/qa_mcp:ro
- ./tests:/app/tests:ro
working_dir: /app
entrypoint: ["python"]
command: ["-m", "pytest", "tests/", "-v"]