本地部署 Firecrawl

本地部署 Firecrawl

本文档概述了如何本地部署 Firecrawl。

为什么要本地部署?

  • 增强安全性和合规性: 数据处理和存储完全在您的控制之下,符合内部和外部法规。Firecrawl 作为 Mendable 产品,依赖于 SOC2 Type2 认证,保证了高数据安全标准。
  • 可定制的服务: 可以根据特定需求定制服务,例如 Playwright 服务。
  • 深入学习和社区贡献: 深入了解 Firecrawl 的工作原理,更有助于贡献代码。

注意事项:

  • Fire-engine 访问受限: 自行部署的实例无法访问 Fire-engine,这意味着无法使用 IP 封锁、机器人检测等高级功能。
  • 手动配置: 需要手动配置 .env 文件以支持基本 fetch 和 Playwright 之外的抓取方法。

部署步骤:

  1. 克隆代码
git clone https://github.com/mendableai/firecrawl.git
  1. 设置环境变量:
    • 创建根目录下的 .env 文件,使用以下模板:
# ===== Required ENVS ======
PORT=3002
HOST=0.0.0.0

# To turn on DB authentication, you need to set up Supabase.
USE_DB_AUTHENTICATION=false

# ===== Optional ENVS ======

# OpenAI API Key (用于 AI 功能)
# OPENAI_API_KEY=

# Ollama (实验性)
# OLLAMA_BASE_URL=http://localhost:11434/api
# MODEL_NAME=deepseek-r1:7b
# MODEL_EMBEDDING_NAME=nomic-embed-text

# OpenAI 兼容 API (实验性)
# OPENAI_BASE_URL=https://example.com/v1
# OPENAI_API_KEY=

# 代理设置
# PROXY_SERVER=
# PROXY_USERNAME=
# PROXY_PASSWORD=

# SearXNG API (用于 /search API)
# SEARXNG_ENDPOINT=http://your.searxng.server
# SEARXNG_ENGINES=
# SEARXNG_CATEGORIES=

# Supabase 设置 (用于数据库认证等)
# SUPABASE_ANON_TOKEN=
# SUPABASE_URL=
# SUPABASE_SERVICE_TOKEN=

# 测试 API 密钥
# TEST_API_KEY=

# ScrapingBee API 密钥 (作为备用抓取引擎)
# SCRAPING_BEE_API_KEY=

# Bull Queue 管理员密钥 (请修改默认值)
BULL_AUTH_KEY=CHANGEME

# (Docker Compose 自动配置,无需手动设置)
# PLAYWRIGHT_MICROSERVICE_URL=http://playwright-service:3000/scrape
# REDIS_URL=redis://redis:6379
# REDIS_RATE_LIMIT_URL=redis://redis:6379

# Llamaparse API 密钥 (用于 PDF 解析)
# LLAMAPARSE_API_KEY=

# Slack Webhook URL (用于健康状态通知)
# SLACK_WEBHOOK_URL=

# Posthog API Key (用于事件跟踪)
# POSTHOG_API_KEY=
# POSTHOG_HOST=
  1. 构建并运行 Docker 容器:
docker compose build
docker compose up -d
  1. 访问 Firecrawl: 在浏览器中访问 http://localhost:3002
  2. Bull Queue 管理员界面: 在浏览器中访问 http://localhost:3002/admin/CHANGEME/queues (请务必修改 BULL_AUTH_KEY)。

API 测试 (可选):

curl -X POST http://localhost:3002/v1/crawl \
    -H 'Content-Type: application/json' \
    -d '{
      "url": "https://firecrawl.dev"
    }'

常见问题及解决方案:

  • API 密钥: 使用 SDK 时,API 密钥是可选的,仅在连接云服务时需要。
  • Supabase 未配置: 目前自行部署的实例不支持 Supabase 配置,但可以正常抓取和爬取。
  • Docker 容器启动失败: 检查 Docker 日志 (docker logs [container_name]),确保环境变量设置正确,以及 Docker Compose 文件配置正确。
  • Redis 连接问题: 确保 Redis 服务运行,.env 文件中的 REDIS_URLREDIS_RATE_LIMIT_URL 设置正确,并且网络配置允许连接。
  • API 接口无响应: 检查 Firecrawl 服务是否运行,PORTHOST 设置是否正确,以及网络配置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值