Docker Container Issues
Container runtime not detected or Docker not available
Container runtime not detected or Docker not available
Problem:
Docker not available or Container runtime not detected errors.Solution:DeerFlow supports multiple container runtimes:- macOS: Automatically prefers Apple Container if available, falls back to Docker
- Other platforms: Uses Docker
-
Verify Docker is running:
-
On macOS with Apple Container:
-
Force Docker runtime (if Apple Container has issues):
-
Check Docker Desktop is running:
- macOS/Windows: Launch Docker Desktop app
- Linux:
sudo systemctl start docker
Sandbox image pull failing or timing out
Sandbox image pull failing or timing out
Problem:
Failed to pull image or long wait times when first using sandbox.Solution:The sandbox image is large (~500MB+) and pulled on first use.-
Pre-pull the image (recommended):
-
Manual pull with progress:
-
Use alternative registry (if blocked):
-
Verify image exists after pull:
-
Check disk space:
Container fails to start or exits immediately
Container fails to start or exits immediately
Problem: Sandbox container starts but exits with error, or never becomes ready.Solution:
-
Check container logs:
-
Verify port availability:
-
Check container resource limits:
-
Test container manually:
-
Verify image architecture matches system:
Multiple sandbox containers running or orphaned containers
Multiple sandbox containers running or orphaned containers
Problem: Many sandbox containers accumulate over time, consuming resources.Solution:
-
Clean up DeerFlow sandbox containers:
-
Manual cleanup script:
-
Remove all stopped containers:
-
Force remove specific container:
-
Verify cleanup:
-
Configure auto-removal (already default):
Path Mapping Problems
File not found in sandbox despite existing on host
File not found in sandbox despite existing on host
Problem: Agent reports
File not found but file exists on host machine.Solution:DeerFlow uses virtual path mapping between host and sandbox:Path Translation:- Agent sees:
/mnt/user-data/workspace/file.txt - Host location:
backend/.deer-flow/threads/{thread_id}/user-data/workspace/file.txt - Agent sees:
/mnt/skills/public/research/SKILL.md - Host location:
skills/public/research/SKILL.md
-
Verify file exists on host:
-
Check path mapping in config:
-
Verify Docker mounts (if using Docker sandbox):
-
Test file access from within container:
-
Common path mistakes:
- ❌ Wrong:
read_file("/home/user/file.txt")(not mounted) - ✅ Correct:
read_file("/mnt/user-data/workspace/file.txt") - ❌ Wrong: Relative paths like
./file.txt(ambiguous) - ✅ Correct: Absolute paths starting with
/mnt/
- ❌ Wrong:
Skills not found or not loading in sandbox
Skills not found or not loading in sandbox
Problem: Agent reports skills unavailable or cannot access skill files.Solution:
-
Verify skills directory exists:
-
Check skills configuration:
-
Verify skills are enabled:
-
Check skill file format:
-
Verify mount in container:
-
Restart to reload skills:
Permission denied errors in sandbox
Permission denied errors in sandbox
Problem:
Permission denied when accessing files or executing commands in sandbox.Solution:-
Check host file permissions:
-
For Docker on Linux - user ID mapping:
-
SELinux issues (Linux):
-
Read-only mount issues:
-
Windows path permissions:
- Ensure Docker Desktop has access to drive
- Settings → Resources → File Sharing → Add drive
Kubernetes/Provisioner Issues
Provisioner cannot connect to Kubernetes API
Provisioner cannot connect to Kubernetes API
Problem:
Connection refused to K8s API when using provisioner mode.Solution:-
Check Kubernetes cluster is running:
-
Enable Kubernetes in Docker Desktop:
- Open Docker Desktop → Settings
- Navigate to Kubernetes tab
- Check “Enable Kubernetes”
- Click “Apply & Restart”
- Wait for Kubernetes to start (may take 2-5 minutes)
-
Check API server address in kubeconfig:
-
Override API server for provisioner:
-
Verify kubeconfig mount:
-
Test connection from provisioner:
Sandbox Pods stuck in Pending or ContainerCreating
Sandbox Pods stuck in Pending or ContainerCreating
Problem: Kubernetes Pods for sandboxes never become Ready.Solution:
-
Check Pod status and events:
-
Common causes:
Image pull issues:
Resource constraints:Volume mount issues:
-
Check provisioner logs:
-
Verify namespace exists:
-
Test Pod creation manually:
Cannot access sandbox URL from backend containers
Cannot access sandbox URL from backend containers
Problem: Backend can’t reach sandbox via NodePort URL.Solution:
-
Verify Service was created:
-
Test from host machine first:
-
Test from backend container:
-
Check extra_hosts in docker-compose (Linux):
-
Verify NODE_HOST configuration:
-
Check Pod network is reachable:
Next Steps
- Model Configuration - Fix LLM provider issues
- Performance Tuning - Optimize sandbox performance
- Configuration Guide - Complete sandbox configuration
- Provisioner Setup - Detailed Kubernetes setup guide