4 months ago
I am trying to deploy the attached Docker compose file and it suceeds when doing so on the website but it says I need to deploy it from Cli or Github repo or other means - Is this because it does not support the Docker Compose file and I need to enter the details for the services manually and if so how can I do that?
2 Replies
4 months ago
bitnami removed all redis images from their docker hub: https://hub.docker.com/r/bitnami/redis
Useful railway documentation for using valkey instead of Redis: https://station.railway.com/questions/migrate-from-bitnami-redis-to-valkey-18a794e7
4 months ago
I don't suggest keeping this as your main source of deployment config, but I got a some-what working Docker Compose by simplying it a bit. I would suggest wiring the services yourself by manually creating services in Railway using the canvas which is very user-friendly. You can follow the guides in the docs: https://docs.railway.com/guides/services
name: firecrawl
services:
playwright-service:
image: ghcr.io/firecrawl/playwright-service:latest
environment:
PORT: 3000
PROXY_SERVER: ${PROXY_SERVER}
PROXY_USERNAME: ${PROXY_USERNAME}
PROXY_PASSWORD: ${PROXY_PASSWORD}
BLOCK_MEDIA: ${BLOCK_MEDIA}
api:
image: ghcr.io/firecrawl/firecrawl
environment:
REDIS_URL: redis://${{redis.RAILWAY_PRIVATE_DOMAIN}}:6379
REDIS_RATE_LIMIT_URL: redis://${{redis.RAILWAY_PRIVATE_DOMAIN}}:6379
PLAYWRIGHT_MICROSERVICE_URL: http://${{playwright-service.RAILWAY_PRIVATE_DOMAIN}}:3000/scrape
NUQ_DATABASE_URL: postgresql://postgres:postgres@${{postgres.RAILWAY_PRIVATE_DOMAIN}}:5432/postgres
USE_DB_AUTHENTICATION: ${USE_DB_AUTHENTICATION}
OPENAI_API_KEY: ${OPENAI_API_KEY}
OPENAI_BASE_URL: ${OPENAI_BASE_URL}
MODEL_NAME: ${MODEL_NAME}
MODEL_EMBEDDING_NAME: ${MODEL_EMBEDDING_NAME}
OLLAMA_BASE_URL: ${OLLAMA_BASE_URL}
SLACK_WEBHOOK_URL: ${SLACK_WEBHOOK_URL}
BULL_AUTH_KEY: ${BULL_AUTH_KEY}
TEST_API_KEY: ${TEST_API_KEY}
POSTHOG_API_KEY: ${POSTHOG_API_KEY}
POSTHOG_HOST: ${POSTHOG_HOST}
SUPABASE_ANON_TOKEN: ${SUPABASE_ANON_TOKEN}
SUPABASE_URL: ${SUPABASE_URL}
SUPABASE_SERVICE_TOKEN: ${SUPABASE_SERVICE_TOKEN}
SELF_HOSTED_WEBHOOK_URL: ${SELF_HOSTED_WEBHOOK_URL}
SERPER_API_KEY: ${SERPER_API_KEY}
SEARCHAPI_API_KEY: ${SEARCHAPI_API_KEY}
LOGGING_LEVEL: ${LOGGING_LEVEL}
PROXY_SERVER: ${PROXY_SERVER}
PROXY_USERNAME: ${PROXY_USERNAME}
PROXY_PASSWORD: ${PROXY_PASSWORD}
SEARXNG_ENDPOINT: ${SEARXNG_ENDPOINT}
SEARXNG_ENGINES: ${SEARXNG_ENGINES}
SEARXNG_CATEGORIES: ${SEARXNG_CATEGORIES}
HOST: "0.0.0.0"
PORT: ${INTERNAL_PORT:-3002}
EXTRACT_WORKER_PORT: ${EXTRACT_WORKER_PORT:-3004}
WORKER_PORT: ${WORKER_PORT:-3005}
ENV: local
command: node dist/src/harness.js --start-docker
redis:
image: redis:alpine
command: redis-server --bind 0.0.0.0
postgres:
image: postgres:alpine
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgres