Tetsuro Yokoyama 5ac6eb7440
Update self-hosted Kubernetes deployments examples for compatibility and consistency (#1177)
* fix: Quote variables in `docker-entrypoint.sh`

- This commit adds double quotes around variables in the docker-entrypoint.sh script to prevent word splitting and globbing issues, ensuring the script behaves correctly in all cases.

* fix: Ensure worker/api deployment starts with `OPENAI_API_KEY`

* fix: Add missing `FLY_PROCESS_GROUP` env var to deployments

* fix: Correct `PLAYWRIGHT_MICROSERVICE_URL` in `firecrawl-config`

* fix: Update Docker build options for Apple Silicon compatibility

* fix: Correct `PLAYWRIGHT_MICROSERVICE_URL` in `firecrawl-config`
2025-02-18 13:33:20 +01:00
..

Install Firecrawl on a Kubernetes Cluster (Simple Version)

Before installing

  1. Set secret.yaml and configmap.yaml and do not check in secrets

    • Note: If REDIS_PASSWORD is configured in the secret, please modify the ConfigMap to reflect the following format for REDIS_URL and REDIS_RATE_LIMIT_URL:
      REDIS_URL: "redis://:password@host:port"
      REDIS_RATE_LIMIT_URL: "redis://:password@host:port"
      
      Replace password, host, and port with the appropriate values.
  2. Build Docker images, and host it in your Docker Registry (replace the target registry with your own)

    1. API (which is also used as a worker image)
      1. docker build --no-cache --platform linux/amd64 -t ghcr.io/winkk-dev/firecrawl:latest ../../../apps/api
        docker push ghcr.io/winkk-dev/firecrawl:latest
        
    2. Playwright
      1.    docker build --no-cache --platform linux/amd64 -t ghcr.io/winkk-dev/firecrawl-playwright:latest ../../../apps/playwright-service
           docker push ghcr.io/winkk-dev/firecrawl-playwright:latest
        
  3. Replace the image in worker.yaml, api.yaml and playwright-service.yaml

Install

kubectl apply -f configmap.yaml
kubectl apply -f secret.yaml
kubectl apply -f playwright-service.yaml
kubectl apply -f api.yaml
kubectl apply -f worker.yaml
kubectl apply -f redis.yaml

Port Forwarding for Testing

kubectl port-forward svc/api 3002:3002 -n dev

Delete Firecrawl

kubectl delete -f configmap.yaml
kubectl delete -f secret.yaml
kubectl delete -f playwright-service.yaml
kubectl delete -f api.yaml
kubectl delete -f worker.yaml
kubectl delete -f redis.yaml