
Deploy Prefect
Prefect 3.8 workflow orchestration server and UI with Postgres and login.
Just deployed
/var/lib/postgresql/data
Just deployed
Deploy and Host Prefect on Railway
Prefect is a workflow orchestration framework for Python. You turn functions into flows and tasks with decorators, and the Prefect server tracks every run with retries, caching, schedules, concurrency limits and a detailed UI. Data pipelines, machine learning jobs and scripts become observable and repeatable without rewriting them.
About Hosting Prefect
This template deploys the Prefect v3.8.6 server and UI from the official image with a Railway Postgres database. The API and UI are protected with basic authentication using a generated password, and analytics are off. Flows running anywhere connect to the public API URL with the same credentials; workers on Railway can use the private URL. The server only orchestrates: add a worker service or run flows from your own machines and CI to execute work. The server is light and fits on the Hobby plan. Back up Postgres regularly to keep the run history.
Common Use Cases
- Scheduling and monitoring Python data pipelines and ETL jobs
- Orchestrating machine learning training and batch inference
- Retries, alerts and visibility for scripts that used to run from cron
Dependencies for Prefect Hosting
prefecthq/prefect:3.8.6-python3.12(official image)- Railway Postgres (
ghcr.io/railwayapp-templates/postgres-ssl:18) with a volume
Deployment Dependencies
Implementation Details
| Service | Image | Networking | Storage |
|---|---|---|---|
| prefect | prefecthq/prefect:3.8.6-python3.12 | public domain on 4200; private | none (state in Postgres) |
| Postgres | Railway Postgres 18 | private only | volume |
Run a flow against the server:
export PREFECT_API_URL=https:///api
export PREFECT_API_AUTH_STRING="admin:"
python my_flow.py
| Variable | Default | Purpose |
|---|---|---|
PREFECT_SERVER_API_AUTH_STRING | admin: | Basic auth for the API and UI |
PREFECT_API_DATABASE_CONNECTION_URL | Postgres reference | Database (asyncpg) |
PREFECT_PRIVATE_API_URL | private URL | For workers on Railway |
Notes:
- The server listens on
0.0.0.0, so private clients connect over IPv4. /api/healthis open for Railway's health check; all other API routes need the login.
This is a community-maintained deployment package and does not imply affiliation with or endorsement by the Prefect project or its maintainers.
Why Deploy Prefect 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 Prefect 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.
Template Content