---
title: "Deploy FlowiseAI"
description: "Open-source low-code tool to build AI agents and LLM workflows visually"
category: "AI/ML"
url: https://railway.com/deploy/flowiseai-1
---

# Deploy FlowiseAI

Open-source low-code tool to build AI agents and LLM workflows visually

**[Deploy FlowiseAI on Railway](https://railway.com/template/flowiseai-1)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/flowiseai-1/manifest.json

- **Creator:** Sendly
- **Category:** AI/ML
- **Total deploys:** 2

## Template content

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### Flowise https://cdn.jsdelivr.net/gh/selfhst/icons/svg/flowise.svg

- **Image:** flowiseai/flowise
- **Public domain:** Yes

## Buckets

- **Bucket**

## Documentation

# Deploy and Host FlowiseAI on Railway

Flowise is an open-source, low-code tool for building AI agents, chatbots and LLM workflows with a drag &amp; drop interface. Connect models, vector stores, tools and memory visually, then expose your flows through an API or an embeddable chat widget.

&gt; **Note:** The upstream Flowise repository was archived on Aug 13, 2026 and is no longer actively maintained. This template deploys the last available image. Use it at your own discretion and keep it behind authentication.

## About Hosting FlowiseAI

Hosting Flowise means running a single Node.js service (the official `flowiseai/flowise` image) that serves both the UI and the API on one HTTP port. By default it stores data in SQLite and uploads on local disk, so you need a persistent volume mounted at `/home/node/.flowise` to avoid losing flows, credentials and files on redeploy. For production, you can switch to Postgres or MySQL with the `DATABASE_*` variables, use S3, GCS or Azure Blob for uploads, and set `FLOWISE_SECRETKEY_OVERWRITE` so your encryption key survives redeploys. Railway handles the build, networking, HTTPS and volumes for you.

## Common Use Cases

- Build RAG chatbots over your own documents and knowledge bases
- Create multi-step AI agents that call tools, APIs and custom functions
- Prototype and ship LLM workflows, then embed them in a website or call them via REST API

## Dependencies for FlowiseAI Hosting

- Flowise Docker image (`flowiseai/flowise`)
- Persistent volume mounted at `/home/node/.flowise` (SQLite database, encryption key and uploads)
- Optional: Postgres or MySQL database, S3-compatible storage, Redis (queue mode)

### Implementation Details

Flowise is configured entirely through environment variables. The most useful ones:

| Variable | Description | Default |
| --- | --- | --- |
| `PORT` | HTTP port Flowise listens on | `3000` |
| `DATABASE_TYPE` | `sqlite`, `mysql` or `postgres` | `sqlite` |
| `DATABASE_PATH` | Where SQLite is saved (sqlite only) | `~/.flowise` |
| `DATABASE_HOST` / `DATABASE_PORT` | Database host and port (non-sqlite) | |
| `DATABASE_USER` / `DATABASE_PASSWORD` / `DATABASE_NAME` | Database credentials and name (non-sqlite) | |
| `DATABASE_SSL` | Connect over SSL (Postgres) | `false` |
| `DATABASE_SSL_KEY_BASE64` | SSL client cert in base64 (takes priority over `DATABASE_SSL`) | |
| `SECRETKEY_PATH` | Where the credentials encryption key is stored | `packages/server` |
| `FLOWISE_SECRETKEY_OVERWRITE` | Encryption key used instead of the stored one | |
| `STORAGE_TYPE` | Uploads storage: `local`, `s3`, `gcs` or `azure` | `local` |
| `BLOB_STORAGE_PATH` | Local uploads folder (when `local`) | `~/.flowise/storage` |
| `S3_STORAGE_BUCKET_NAME` / `S3_STORAGE_ACCESS_KEY_ID` / `S3_STORAGE_SECRET_ACCESS_KEY` / `S3_STORAGE_REGION` | S3 storage settings | |
| `S3_ENDPOINT_URL` / `S3_FORCE_PATH_STYLE` | Custom S3 endpoint and path-style addressing | `false` |
| `GOOGLE_CLOUD_STORAGE_PROJ_ID` / `GOOGLE_CLOUD_STORAGE_CREDENTIAL` / `GOOGLE_CLOUD_STORAGE_BUCKET_NAME` | GCS storage settings | |
| `AZURE_BLOB_STORAGE_CONNECTION_STRING` | Azure connection string (or use account name + key) | |
| `CORS_ORIGINS` | Allowed origins for cross-origin calls | |
| `CORS_ALLOW_CREDENTIALS` | Enable `Access-Control-Allow-Credentials` | `false` |
| `IFRAME_ORIGINS` | Allowed origins for iframe embedding | |
| `FLOWISE_FILE_SIZE_LIMIT` | Max upload size | `50mb` |
| `TRUST_PROXY` | Proxy trust settings for correct IP detection | `true` |
| `SHOW_COMMUNITY_NODES` | Show community-created nodes | |
| `DISABLED_NODES` | Comma-separated node names to hide | |
| `DISABLE_FLOWISE_TELEMETRY` | Turn off telemetry | |
| `MODEL_LIST_CONFIG_JSON` | Path to a custom model list file | |
| `TOOL_FUNCTION_BUILTIN_DEP` / `TOOL_FUNCTION_EXTERNAL_DEP` | Node.js modules allowed in Custom Tools and Functions | |
| `ALLOW_BUILTIN_DEP` | Allow project dependencies in Custom Tools | `false` |
| `DEBUG` | Print component logs | |
| `LOG_LEVEL` | `error`, `info`, `verbose` or `debug` | `info` |
| `LOG_PATH` | Log files location | `Flowise/logs` |

Authentication and advanced options (see the [Flowise docs](https://docs.flowiseai.com/configuration/environment-variables) for the full list):

| Variable | Description |
| --- | --- |
| `APP_URL` | Public URL of your instance |
| `JWT_AUTH_TOKEN_SECRET` / `JWT_REFRESH_TOKEN_SECRET` | Secrets used to sign auth tokens |
| `EXPRESS_SESSION_SECRET` / `TOKEN_HASH_SECRET` | Session and token hashing secrets |
| `SECURE_COOKIES` | Use secure cookies (set `true` behind HTTPS) |
| `SMTP_HOST` / `SMTP_PORT` / `SMTP_USER` / `SMTP_PASSWORD` / `SENDER_EMAIL` | Email settings for invites and password resets |
| `MODE` | Set to `queue` to enable queue mode |
| `REDIS_URL` or `REDIS_HOST` / `REDIS_PORT` / `REDIS_PASSWORD` | Redis connection (queue mode) |
| `WORKER_CONCURRENCY` / `QUEUE_NAME` | Queue worker settings |
| `ENABLE_METRICS` / `METRICS_PROVIDER` | Metrics collection (Prometheus or OpenTelemetry) |
| `HTTP_DENY_LIST` / `HTTP_SECURITY_CHECK` | Restrict outbound HTTP requests from tools |

Docker equivalent (healthcheck at `/api/v1/ping`):

```yaml
services:
  flowise:
    image: flowiseai/flowise:latest
    restart: always
    environment:
      - PORT=3000
    ports:
      - '3000:3000'
    healthcheck:
      test: ['CMD', 'curl', '-f', 'http://localhost:3000/api/v1/ping']
      interval: 10s
      timeout: 5s
      retries: 5
      start_period: 30s
    volumes:
      - ~/.flowise:/home/node/.flowise
    entrypoint: /bin/sh -c "sleep 3; flowise start"
```

The container runs as the non-root `node` user, so the mounted volume must be writable by it.

## Why Deploy FlowiseAI on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying FlowiseAI on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/flowiseai-1
