[PR #769] fix(firecrawl): align self-host template with v2.8.0 #5720

Open
opened 2026-05-13 19:57:14 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Dokploy/templates/pull/769
Author: @Manan-Santoki
Created: 4/3/2026
Status: 🔄 Open

Base: canaryHead: fix/firecrawl-template-v2-8-0


📝 Commits (7)

  • d9c507e fix: update firecrawl template for v2.8.0
  • 8112a1b fix(firecrawl): use redis 7 alpine
  • 4cb06de fix(firecrawl): default boolean env values
  • 3ae7042 fix(firecrawl): use postgres defaults for nuq init
  • 8033481 docs(firecrawl): document template env variables
  • f93a44e fix(firecrawl): default optional env vars to empty
  • d486003 fix(firecrawl): wire supabase auth envs

📊 Changes

3 files changed (+171 additions, -108 deletions)

View changed files

📝 blueprints/firecrawl/docker-compose.yml (+70 -59)
📝 blueprints/firecrawl/template.toml (+99 -29)
📝 meta.json (+2 -20)

📄 Description

Summary

  • align the Firecrawl Dokploy template with the current upstream self-hosted architecture
  • pin Firecrawl source builds to v2.8.0 and switch startup to the upstream harness entrypoint
  • update the template env model for PostgreSQL and RabbitMQ, and refresh the meta.json entry

What changed

  • replaced the stale split-process Firecrawl deployment with the current harness-driven api service
  • added the missing rabbitmq dependency and kept redis, playwright-service, and nuq-postgres
  • changed Firecrawl-owned services from latest images to remote source builds pinned to v2.8.0
  • updated Dokploy template variables to use POSTGRES_*, NUQ_RABBITMQ_URL, and current optional Firecrawl envs
  • pinned the Firecrawl metadata version to v2.8.0
  • running the required meta processing also removed a pre-existing duplicate strapi entry from meta.json

Root cause

The existing Firecrawl template still launched the old runtime layout using node --import ./dist/src/otel.js .... Upstream Firecrawl now starts through node dist/src/harness.js --start-docker and expects RabbitMQ plus harness-managed workers, so the old Dokploy template crashed with ERR_MODULE_NOT_FOUND for /app/dist/src/otel.js.

Impact

Dokploy users should get a Firecrawl deployment shape that matches current upstream self-hosting instead of the broken legacy image startup path. The template is also now version-pinned instead of following latest.

Validation

  • node dedupe-and-sort-meta.js
  • docker compose -f blueprints/firecrawl/docker-compose.yml config
  • npm run validate-docker-compose -- --file ../blueprints/firecrawl/docker-compose.yml (from build-scripts/)
  • npm run validate-template -- --dir ../blueprints/firecrawl (from build-scripts/)
  • git diff --check

Greptile Summary

This PR aligns the Firecrawl blueprint with the v2.8.0 upstream self-hosted architecture, replacing the broken legacy split-process startup with the harness-driven layout, adding RabbitMQ, and pinning all source builds to the v2.8.0 git tag.

  • P1: The default NUQ_RABBITMQ_URL (amqp://rabbitmq:5672) omits credentials. RabbitMQ's built-in guest account is restricted to loopback connections, so the api container will receive ACCESS_REFUSED and fail to start. The rabbitmq service needs a configured user and the URL needs matching credentials.

Confidence Score: 3/5

Not safe to merge — the RabbitMQ URL missing credentials will prevent the api service from connecting to RabbitMQ on startup.

One P1 defect: the default AMQP URL has no credentials and RabbitMQ's guest account is blocked from non-localhost connections, meaning the api container will fail to start in a default Dokploy deployment. The rest of the changes are structurally correct and well-aligned with the upstream v2.8.0 layout.

blueprints/firecrawl/docker-compose.yml (rabbitmq service and NUQ_RABBITMQ_URL default) and blueprints/firecrawl/template.toml (NUQ_RABBITMQ_URL default on line 67)

Reviews (1): Last reviewed commit: "fix(firecrawl): default optional env var..." | Re-trigger Greptile

Greptile also left 2 inline comments on this PR.

(3/5) Reply to the agent's comments like "Can you suggest a fix for this @greptileai?" or ask follow-up questions!


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Dokploy/templates/pull/769 **Author:** [@Manan-Santoki](https://github.com/Manan-Santoki) **Created:** 4/3/2026 **Status:** 🔄 Open **Base:** `canary` ← **Head:** `fix/firecrawl-template-v2-8-0` --- ### 📝 Commits (7) - [`d9c507e`](https://github.com/Dokploy/templates/commit/d9c507e093b32d211a96f6688f1e5eb105b58921) fix: update firecrawl template for v2.8.0 - [`8112a1b`](https://github.com/Dokploy/templates/commit/8112a1b42d91f71d2eb1179ae9b0a1b59c3110f2) fix(firecrawl): use redis 7 alpine - [`4cb06de`](https://github.com/Dokploy/templates/commit/4cb06dee9d04fe5f99d843a0f6a068a0358cb750) fix(firecrawl): default boolean env values - [`3ae7042`](https://github.com/Dokploy/templates/commit/3ae70429e61876c478b2b5f23a54bd900e71d23b) fix(firecrawl): use postgres defaults for nuq init - [`8033481`](https://github.com/Dokploy/templates/commit/80334813e6490a34f0f6051345d0ae8832cb352b) docs(firecrawl): document template env variables - [`f93a44e`](https://github.com/Dokploy/templates/commit/f93a44e12c6d9ecb72bb8962e89344b3005d579a) fix(firecrawl): default optional env vars to empty - [`d486003`](https://github.com/Dokploy/templates/commit/d486003df62167c496ea3553131d3953403f92e9) fix(firecrawl): wire supabase auth envs ### 📊 Changes **3 files changed** (+171 additions, -108 deletions) <details> <summary>View changed files</summary> 📝 `blueprints/firecrawl/docker-compose.yml` (+70 -59) 📝 `blueprints/firecrawl/template.toml` (+99 -29) 📝 `meta.json` (+2 -20) </details> ### 📄 Description ## Summary - align the Firecrawl Dokploy template with the current upstream self-hosted architecture - pin Firecrawl source builds to `v2.8.0` and switch startup to the upstream harness entrypoint - update the template env model for PostgreSQL and RabbitMQ, and refresh the `meta.json` entry ## What changed - replaced the stale split-process Firecrawl deployment with the current harness-driven `api` service - added the missing `rabbitmq` dependency and kept `redis`, `playwright-service`, and `nuq-postgres` - changed Firecrawl-owned services from `latest` images to remote source builds pinned to `v2.8.0` - updated Dokploy template variables to use `POSTGRES_*`, `NUQ_RABBITMQ_URL`, and current optional Firecrawl envs - pinned the Firecrawl metadata version to `v2.8.0` - running the required meta processing also removed a pre-existing duplicate `strapi` entry from `meta.json` ## Root cause The existing Firecrawl template still launched the old runtime layout using `node --import ./dist/src/otel.js ...`. Upstream Firecrawl now starts through `node dist/src/harness.js --start-docker` and expects RabbitMQ plus harness-managed workers, so the old Dokploy template crashed with `ERR_MODULE_NOT_FOUND` for `/app/dist/src/otel.js`. ## Impact Dokploy users should get a Firecrawl deployment shape that matches current upstream self-hosting instead of the broken legacy image startup path. The template is also now version-pinned instead of following `latest`. ## Validation - `node dedupe-and-sort-meta.js` - `docker compose -f blueprints/firecrawl/docker-compose.yml config` - `npm run validate-docker-compose -- --file ../blueprints/firecrawl/docker-compose.yml` (from `build-scripts/`) - `npm run validate-template -- --dir ../blueprints/firecrawl` (from `build-scripts/`) - `git diff --check` <!-- greptile_comment --> <h3>Greptile Summary</h3> This PR aligns the Firecrawl blueprint with the v2.8.0 upstream self-hosted architecture, replacing the broken legacy split-process startup with the harness-driven layout, adding RabbitMQ, and pinning all source builds to the `v2.8.0` git tag. - **P1**: The default `NUQ_RABBITMQ_URL` (`amqp://rabbitmq:5672`) omits credentials. RabbitMQ's built-in `guest` account is restricted to loopback connections, so the `api` container will receive `ACCESS_REFUSED` and fail to start. The rabbitmq service needs a configured user and the URL needs matching credentials. <h3>Confidence Score: 3/5</h3> Not safe to merge — the RabbitMQ URL missing credentials will prevent the api service from connecting to RabbitMQ on startup. One P1 defect: the default AMQP URL has no credentials and RabbitMQ's guest account is blocked from non-localhost connections, meaning the api container will fail to start in a default Dokploy deployment. The rest of the changes are structurally correct and well-aligned with the upstream v2.8.0 layout. blueprints/firecrawl/docker-compose.yml (rabbitmq service and NUQ_RABBITMQ_URL default) and blueprints/firecrawl/template.toml (NUQ_RABBITMQ_URL default on line 67) <sub>Reviews (1): Last reviewed commit: ["fix(firecrawl): default optional env var..."](https://github.com/dokploy/templates/commit/f93a44e12c6d9ecb72bb8962e89344b3005d579a) | [Re-trigger Greptile](https://app.greptile.com/api/retrigger?id=27331257)</sub> > Greptile also left **2 inline comments** on this PR. <sub>(3/5) Reply to the agent's comments like "Can you suggest a fix for this @greptileai?" or ask follow-up questions!</sub> <!-- /greptile_comment --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-05-13 19:57:14 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/templates#5720