Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,11 @@ Fire-engine, Firecrawl's solution for anti-bot pages, being closed source is the

## How to self host?

> **Warning — published Docker images are currently stale.**
> The `trieve/firecrawl` and `trieve/puppeteer-service-ts` images on Docker Hub were last published in September 2024 and no longer start because the bundled `corepack` predates npm's registry signing-key rotation (`Cannot find matching keyid`). There is no release-triggered publish workflow in this repo, so `:latest` and the pinned tags below have drifted.
>
> **To self-host today, build from source instead of pulling published images.** Clone this repo and run `docker compose up -d` from the repo root — the `docker-compose.yaml` is wired for local builds (the `api` service sets `pull_policy: build` so it always builds from `apps/api/Dockerfile` and never pulls). See [`SELF_HOST.md`](./SELF_HOST.md) for the full walkthrough. The snippet below will work as-is once the images are republished.

You should add the following services to your docker-compose as follows. We trust that you can configure Kubernetes or other hosting solutions to run these services.

```yaml
Expand Down
12 changes: 10 additions & 2 deletions SELF_HOST.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,19 @@ PLAYWRIGHT_MICROSERVICE_URL= # set if you'd like to run a playwright fallback

* Don't forget to set the proxy server in your `.env` file as needed.

4. Build and run the Docker containers:
4. Build and run the Docker containers.

The `api` service in `docker-compose.yaml` sets `pull_policy: build`, so Compose builds it from `apps/api/Dockerfile` and never pulls the stale published `trieve/firecrawl:latest` image (see issue [#48](https://github.com/devflowinc/firecrawl-simple/issues/48)). `docker compose up -d` is enough:

```bash
docker compose up -d
```

If you prefer, the explicit two-step form is equivalent:

```bash
docker compose build
docker compose up
docker compose up -d
```

This will run a local instance of Firecrawl which can be accessed at `http://localhost:3002`.
Expand Down
1 change: 1 addition & 0 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ services:
api:
image: trieve/firecrawl
<<: *common-service
pull_policy: build
depends_on:
- redis
- puppeteer-service
Expand Down