chore: update docker-compose configuration

- Added new external networks: public, badge-net, and mcp_net.
- Changed service network assignments to use the new networks.
- Updated restart policy condition for services to 'any'.
- Adjusted healthcheck commands and service commands for consistency.
- Commented out the firecrawl-mcp service for future reference.
This commit is contained in:
2025-11-26 08:40:43 -05:00
parent 2d214b68ed
commit 8baa104780

View File

@@ -1,7 +1,10 @@
version: '3.8'
networks:
traefik:
public:
external: true
badge-net:
external: true
mcp_net:
driver: overlay
external: true
services:
@@ -18,8 +21,9 @@ services:
- "traefik.http.services.pieces-mcp.loadbalancer.server.port=8096"
- "traefik.http.middlewares.pieces-mcp-stripprefix.stripprefix.prefixes=/pieces-mcp"
- "traefik.http.routers.pieces-mcp.middlewares=pieces-mcp-stripprefix"
replicas: 1
restart_policy:
condition: on-failure
condition: any
healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':8096 ' || exit 1"]
interval: 30s
@@ -27,43 +31,45 @@ services:
retries: 3
start_period: 40s
command: >
--named-server pieces-os 'mcp-proxy --transport sse http://host.docker.internal:39300/model_context_protocol/2024-11-05/sse'
--named-server pieces-os 'mcp-proxy --transport streamablehttp http://host.docker.internal:39301/model_context_protocol/2025-03-26/mcp'
--port=8096 --host=0.0.0.0 --allow-origin='*'
networks:
- traefik
firecrawl-mcp:
image: git.baked.rocks/vasceannie/firecrawl-mcp:latest
deploy:
placement:
constraints:
- node.hostname == wslbox
labels:
- "traefik.enable=true"
- "traefik.http.routers.firecrawl-mcp.rule=Host(`mcp.box`) && PathPrefix(`/firecrawl-mcp`)"
- "traefik.http.routers.firecrawl-mcp.entrypoints=web"
- "traefik.http.services.firecrawl-mcp.loadbalancer.server.port=8097"
- "traefik.http.middlewares.firecrawl-mcp-stripprefix.stripprefix.prefixes=/firecrawl-mcp"
- "traefik.http.routers.firecrawl-mcp.middlewares=firecrawl-mcp-stripprefix"
restart_policy:
condition: on-failure
environment:
- FIRECRAWL_API_URL=http://crawl.toy
- FIRECRAWL_API_KEY=dummy-key
healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
command: >
--pass-environment
--stateless
--transport streamablehttp
--port=8097 --host=0.0.0.0
npx firecrawl-mcp
networks:
- traefik
- public
- badge-net
- mcp_net
# firecrawl-mcp:
# image: git.baked.rocks/vasceannie/firecrawl-mcp:latest
# deploy:
# placement:
# constraints:
# - node.hostname == wslbox
# labels:
# - "traefik.enable=true"
# - "traefik.http.routers.firecrawl-mcp.rule=Host(`mcp.box`) && PathPrefix(`/firecrawl-mcp`)"
# - "traefik.http.routers.firecrawl-mcp.entrypoints=web"
# - "traefik.http.services.firecrawl-mcp.loadbalancer.server.port=8097"
# - "traefik.http.middlewares.firecrawl-mcp-stripprefix.stripprefix.prefixes=/firecrawl-mcp"
# - "traefik.http.routers.firecrawl-mcp.middlewares=firecrawl-mcp-stripprefix"
# replicas: 1
# restart_policy:
# condition: any
# environment:
# - FIRECRAWL_API_URL=http://crawl.toy
# - FIRECRAWL_API_KEY=dummy-key
# healthcheck:
# test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
# interval: 30s
# timeout: 10s
# retries: 3
# start_period: 40s
# command: >
# --pass-environment
# --stateless
# --transport streamablehttp
# --port=8097 --host=0.0.0.0
# npx firecrawl-mcp
# networks:
# - traefik
context7-mcp:
image: git.baked.rocks/vasceannie/context7-mcp:latest
@@ -78,8 +84,9 @@ services:
- "traefik.http.services.context7-mcp.loadbalancer.server.port=8098"
- "traefik.http.middlewares.context7-mcp-stripprefix.stripprefix.prefixes=/context7-mcp"
- "traefik.http.routers.context7-mcp.middlewares=context7-mcp-stripprefix"
replicas: 1
restart_policy:
condition: on-failure
condition: any
healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
interval: 30s
@@ -90,8 +97,9 @@ services:
--named-server context7 'mcp-proxy --stateless --transport streamablehttp --headers CONTEXT7_API_KEY ctx7sk-f6f1b998-88a2-4e78-9d21-433545326e6c https://mcp.context7.com/mcp'
--port=8098 --host=0.0.0.0 --allow-origin='*'
networks:
- traefik
- public
- badge-net
- mcp_net
# knowledge-graph-mcp:
# image: git.baked.rocks/vasceannie/knowledge-graph-mcp:latest
# deploy:
@@ -105,8 +113,9 @@ services:
# - "traefik.http.services.knowledge-graph-mcp.loadbalancer.server.port=8099"
# - "traefik.http.middlewares.knowledge-graph-mcp-stripprefix.stripprefix.prefixes=/knowledge-graph-mcp"
# - "traefik.http.routers.knowledge-graph-mcp.middlewares=knowledge-graph-mcp-stripprefix"
# replicas: 1
# restart_policy:
# condition: on-failure
# condition: any
# healthcheck:
# test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
# interval: 30s
@@ -132,8 +141,9 @@ services:
- "traefik.http.services.xpipe-mcp.loadbalancer.server.port=8100"
- "traefik.http.middlewares.xpipe-mcp-stripprefix.stripprefix.prefixes=/xpipe-mcp"
- "traefik.http.routers.xpipe-mcp.middlewares=xpipe-mcp-stripprefix"
replicas: 1
restart_policy:
condition: on-failure
condition: any
healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
interval: 30s
@@ -144,4 +154,6 @@ services:
--named-server xpipe 'mcp-proxy --transport streamablehttp --headers Authorization "Bearer 27d1c4ca-dfec-4d38-adc1-1e0f4bcbaadc" http://host.docker.internal:21721/mcp'
--port=8100 --host=0.0.0.0 --allow-origin='*'
networks:
- traefik
- public
- badge-net
- mcp_net