Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
58 lines (53 loc) · 2.04 KB
/
Copy pathdocker-compose.yml
File metadata and controls
58 lines (53 loc) · 2.04 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
services:
playwright-csharp-scraper:
image: ghcr.io/spelech/csharpscraper:latest
container_name: playwright-csharp-scraper
labels:
# WUD auto-update configurations
- wud.watch=true
- wud.registry=ghcr
- wud.tag.include=^\d+\.\d+\.\d+$
- wud.trigger.AUTOUPDATE.dryrun=false
# Caddy Reverse Proxy & Auth
- caddy=scraper.wileyriley.com
- caddy.import_1=cloudflare
- caddy.import_2=tinyauth
- caddy.reverse_proxy={{upstreams 8080}}
# TinyAuth Portal Auto-Discovery & Access Control
- tinyauth.apps.scraper.config.domain=scraper.wileyriley.com
- tinyauth.apps.scraper.oauth.groups=full_admin
- "portal.scraper.name=C# Playwright Scraper"
- "portal.scraper.description=Agentic Playwright Scraper & Web Dashboard (MCP 2026-07-28)."
- "portal.scraper.category=LLMs"
- "portal.scraper.icon=fa-solid fa-spider"
- "portal.scraper.color=#0284c7"
# Uptime Kuma Monitoring (AutoKuma)
- kuma.scraper.http.name=Playwright Scraper MCP
- kuma.scraper.http.url=https://scraper.wileyriley.com/health
- kuma.scraper.http.group=Infrastructure
restart: unless-stopped
ports:
- "8428:8080"
volumes:
- ./temp_screenshots:/app/temp_screenshots
environment:
- TZ=${TZ:-America/Chicago}
- DEFAULT_LLM_BASE_URL=${DEFAULT_LLM_BASE_URL:-http://litellm:4000/v1}
- DEFAULT_LLM_API_KEY=${DEFAULT_LLM_API_KEY:-sk-placeholder}
- DEFAULT_LLM_MODEL=${DEFAULT_LLM_MODEL:-gemini-3.5-flash}
- BROWSER_WS_ENDPOINT=${BROWSER_WS_ENDPOINT:-ws://browser-sockpuppet-chrome:3000}
- SEARXNG_BASE_URL=${SEARXNG_BASE_URL:-}
networks:
- net_webservices
- net_cloud
- net_mcp
ipc: host # Important for Chromium sandbox inside Docker to prevent out-of-memory crashes
security_opt:
- seccomp=unconfined # Optional: helps Chromium sandbox run in container without root privilege issues
networks:
net_webservices:
external: true
net_cloud:
external: true
net_mcp:
external: true