This project sets up concurrent Firecrawl instances to simulate high bot traffic against mindvalley.com.
firecrawl-bot-simulation/
├── firecrawl/ # Cloned Firecrawl repository (base)
├── instances/ # 2 separate instance directories
│ ├── instance01/ # Googlebot simulation
│ ├── instance02/ # Bingbot simulation
├── configs/ # Crawler configuration JSON files
├── scripts/ # Launch, monitor, and analysis scripts
├── logs/ # Log output from all instances
└── README.md
| Instance | Type | Port | User-Agent | Depth | Delay | JS Enabled |
|---|---|---|---|---|---|---|
| 01 | Googlebot | 3002 | Googlebot/2.1 | 3 | 1s | Yes |
| 02 | Bingbot | 3003 | bingbot/2.0 | 3 | 1s | Yes |
- macOS (Intel or Apple Silicon)
- Docker Desktop installed and running
- At least 16GB RAM recommended
- Stable internet connection
-
Verify Docker is running:
docker ps
-
Set up all instances:
./scripts/setup-instances.sh
-
Launch all instances:
./scripts/launch-all.sh
-
Start crawls:
./scripts/start-crawls.sh
-
Monitor progress:
- Watch logs in
logs/directory - Each instance logs to
logs/instanceXX.log
- Watch logs in
-
Analyze results:
./scripts/analyze-logs.sh
-
Cleanup:
./scripts/cleanup-all.sh
cd instances/instance01
docker compose -p firecrawl-instance01 up 2>&1 | tee ../../logs/instance01.logcurl -X POST http://localhost:3002/v2/crawl \
-H "Content-Type: application/json" \
-d @../../configs/instance01-config.jsoncd instances/instance01
docker compose -p firecrawl-instance01 downAfter the test, the analyze-logs.sh script will:
- Search all logs for HTTP 500 errors
- Count errors per instance
- Identify problematic URLs
- Generate a summary report in
logs/analysis-report.txt
- Each instance runs in isolated Docker Compose project
- All instances target https://www.mindvalley.com
- Logs are captured with timestamps for correlation
- System resource usage may be high with all instances running
- Port conflicts: Ensure ports 3002-3011 are available
- Docker memory: Increase Docker Desktop memory allocation if needed
- Failed builds: Run
docker system pruneand rebuild - Rate limiting: Expect 429 errors from aggressive instances