Firecrawl 自托管部署教程
使用 Docker Compose 快速部署 Firecrawl 服务
前置要求
-
Docker 和 Docker Compose
-
至少 8GB 内存
-
支持的系统:Mac (M1/M2/M3/M4)、Linux、Windows
快速部署
1. 克隆仓库
git clone https://github.com/gwozai/firecrawl.git
cd firecrawl
2. 启动服务
docker compose up -d
3. 查看服务状态
docker compose ps
正常运行时应该看到:
| 服务 | 状态 | 端口 |
|-----|------|------|
| api | Up | 3002 |
| playwright-service | Up | 3000 |
| nuq-postgres | Up | 5432 |
| redis | Up | 6379 |
4. 验证服务
curl http://localhost:3002/
Docker 镜像
本项目使用以下多平台镜像(支持 AMD64 和 ARM64):
| 镜像 | 说明 |
|-----|------|
| gwozai/firecrawl:latest | 主 API 服务 |
| gwozai/firecrawl-playwright:latest | Playwright 浏览器服务 |
| gwozai/firecrawl-nuq-postgres:latest | PostgreSQL 数据库 |
| redis:alpine | Redis 缓存 |
常用命令
启动服务
docker compose up -d
停止服务
docker compose down
查看日志
# 查看所有日志
docker compose logs -f
# 查看特定服务日志
docker compose logs -f api
docker compose logs -f playwright-service
重启服务
docker compose restart
更新镜像
docker compose pull
docker compose up -d
环境变量配置
创建 .env 文件配置可选参数:
# API 端口
PORT=3002
# Redis 配置
REDIS_URL=redis://redis:6379
# PostgreSQL 配置
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=postgres
# OpenAI(可选,用于 AI 提取功能)
OPENAI_API_KEY=your-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
# 代理配置(可选)
PROXY_SERVER=http://your-proxy:port
PROXY_USERNAME=username
PROXY_PASSWORD=password
资源限制
默认资源配置(可在 docker-compose.yaml 中调整):
| 服务 | CPU | 内存 |
|-----|-----|------|
| api | 4 核 | 8GB |
| playwright-service | 2 核 | 4GB |
故障排除
Playwright 服务启动失败
# 查看日志
docker compose logs playwright-service
# 重新拉取镜像
docker compose pull playwright-service
docker compose up -d playwright-service
API 连接 Redis 失败
# 检查 Redis 状态
docker compose logs redis
# 重启 Redis
docker compose restart redis
端口被占用
# 修改 .env 文件中的端口
PORT=3003
使用代理拉取镜像
如果网络受限,使用代理拉取:
export https_proxy=http://127.0.0.1:7897 http_proxy=http://127.0.0.1:7897 all_proxy=socks5://127.0.0.1:7897
docker compose pull
部署完成后,访问 http://localhost:3002 即可使用 Firecrawl API。