Crawl4AI Docker: die selbst gehostete Crawling-API
Ein Befehl startet Crawl4AI als REST-API mit Web-Playground: docker run -d -p 11235:11235 --shm-size=1g unclecode/crawl4ai:latest. Danach /md oder /crawl aus jeder Programmiersprache aufrufen.
Aktualisiert am 06.11.2026
Container starten
docker run -d \
-p 11235:11235 \
--name crawl4ai \
--shm-size=1g \
unclecode/crawl4ai:latest
- API:
http://localhost:11235 - Playground (Anfragen im Browser testen):
http://localhost:11235/playground - Statusprüfung:
GET /health
--shm-size=1g ist wichtig: Chromium braucht Shared Memory und stürzt bei größeren Seiten sonst ab.
Markdown holen: POST /md
curl -X POST http://localhost:11235/md \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "f": "fit"}'
f wählt den Filter: raw, fit, bm25 (mit Suchbegriff q) oder llm.
Vollständiger Crawl: POST /crawl
curl -X POST http://localhost:11235/crawl \
-H "Content-Type: application/json" \
-d '{
"urls": ["https://example.com"],
"browser_config": {"type": "BrowserConfig", "params": {"headless": true}},
"crawler_config": {"type": "CrawlerRunConfig", "params": {"cache_mode": "bypass"}}
}'
Weitere Endpunkte: /crawl/stream (NDJSON), /html, /screenshot, /pdf, /execute_js sowie MCP unter /mcp/sse (siehe Crawl4AI MCP).
LLM-Funktionen: .llm.env
# .llm.env (nie ins Git einchecken)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=...
docker run -d -p 11235:11235 --name crawl4ai --shm-size=1g \
--env-file .llm.env unclecode/crawl4ai:latest
docker compose
services:
crawl4ai:
image: unclecode/crawl4ai:latest
ports: ["11235:11235"]
shm_size: "1g"
env_file: [.llm.env]
restart: unless-stopped
Port 11235 nicht ungeschützt ins Internet stellen. Die Authentifizierung ist standardmäßig aus. JWT in
config.yml einschalten (security.enabled) oder die API hinter einen Reverse Proxy mit Login legen.Die Anfrage für eine bestimmte Seite? URL im Online-Tool eingeben und den Tab „Docker API“ öffnen.
Crawl4AI Docker: häufige Fragen
Welchen Port nutzt Crawl4AI Docker?
Port 11235. Der Playground liegt unter http://localhost:11235/playground.
Warum stürzt Crawl4AI in Docker ab?
Meist ist der Shared Memory zu klein. Container mit
--shm-size=1g starten (in docker compose: shm_size).Kann ich die Docker-API aus n8n oder JavaScript aufrufen?
Ja, es ist normales HTTP mit JSON. Siehe Crawl4AI mit n8n.
Weitere Crawl4AI-Anleitungen
Crawl4AI Python-Tutorialpip install, AsyncWebCrawler, Fit-Markdown, LLM-Extraktion.Crawl4AI MCP-ServerWebzugriff für Claude und Cursor über den MCP-Endpunkt im Docker-Image.Crawl4AI vs FirecrawlLizenz, Hosting, Kostenmodell und die richtige Wahl.Ist Crawl4AI kostenlos?Apache-2.0-Lizenz, kommerzielle Nutzung, echte Betriebskosten.Crawl4AI mit n8nHTTP-Request-Node + Docker: Markdown in jedem Workflow.Crawl4AI-AlternativenFirecrawl, Jina Reader, ScrapeGraphAI, Scrapy und mehr.