Fix all critical and high-priority issues from code review:
1. Fix checkout ref logic (CRITICAL)
- Simplified to: ref: ${{ inputs.tag || github.ref }}
- Works correctly for both workflow_dispatch and push events
- Removes conditional logic that would fail for manual triggers
2. Consolidate tag validation
- Remove duplicate validation logic
- Single validation path for both trigger types
- Clearer error messages with received value
3. Add PyPI error handling
- Use curl -sf for proper error codes
- Validate GRAPHITI_VERSION is not empty
- Exit with clear error if PyPI fetch fails
4. Improve docker-compose comments
- Add concrete version tag examples
- Show users how to pin specific versions
- Clarify when local build vs registry pull is used
5. Update workflow_dispatch description
- Clarify tag must already exist in repo
- Prevent user confusion about tag creation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
50 lines
No EOL
1.5 KiB
YAML
50 lines
No EOL
1.5 KiB
YAML
services:
|
|
falkordb:
|
|
image: falkordb/falkordb:latest
|
|
ports:
|
|
- "6379:6379" # Redis/FalkorDB port
|
|
- "3000:3000" # FalkorDB web UI
|
|
environment:
|
|
- FALKORDB_PASSWORD=${FALKORDB_PASSWORD:-}
|
|
volumes:
|
|
- falkordb_data:/data
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-p", "6379", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 10s
|
|
|
|
graphiti-mcp:
|
|
image: zepai/knowledge-graph-mcp:standalone
|
|
# For specific versions, replace 'standalone' with a version tag:
|
|
# image: zepai/knowledge-graph-mcp:1.0.0-standalone
|
|
# When building locally, the build section below will be used.
|
|
build:
|
|
context: ..
|
|
dockerfile: docker/Dockerfile.standalone
|
|
env_file:
|
|
- path: ../.env
|
|
required: false
|
|
depends_on:
|
|
falkordb:
|
|
condition: service_healthy
|
|
environment:
|
|
# Database configuration
|
|
- FALKORDB_URI=${FALKORDB_URI:-redis://falkordb:6379}
|
|
- FALKORDB_PASSWORD=${FALKORDB_PASSWORD:-}
|
|
- FALKORDB_DATABASE=${FALKORDB_DATABASE:-default_db}
|
|
# Application configuration
|
|
- GRAPHITI_GROUP_ID=${GRAPHITI_GROUP_ID:-main}
|
|
- SEMAPHORE_LIMIT=${SEMAPHORE_LIMIT:-10}
|
|
- CONFIG_PATH=/app/mcp/config/config.yaml
|
|
- PATH=/root/.local/bin:${PATH}
|
|
volumes:
|
|
- ../config/config-docker-falkordb.yaml:/app/mcp/config/config.yaml:ro
|
|
ports:
|
|
- "8000:8000" # Expose the MCP server via HTTP transport
|
|
command: ["uv", "run", "main.py"]
|
|
|
|
volumes:
|
|
falkordb_data:
|
|
driver: local |