
Deploy Taiga
Deploy Taiga, open source Scrum/Kanban project management, on Railway.
Just deployed
/taiga-back/media
Rabbitmq
Just deployed
/var/lib/rabbitmq
Postgres
Just deployed
/var/lib/postgresql/data
Deploy and Host Taiga on Railway
Taiga is a free, open-source project management platform built for agile teams. It supports Scrum, Kanban and mixed workflows with backlogs, sprints, user stories, tasks, issues, wikis and real-time collaboration. It is developed by Kaleidos and released under MPL-2.0 (backend/events) and AGPL-3.0 (frontend).
About Hosting Taiga
Hosting Taiga means running four cooperating pieces: the web frontend (SPA), the Django backend API (gunicorn), the real-time events/WebSocket server and the Celery async worker, all backed by PostgreSQL and RabbitMQ. The official images ship separately, so a typical deployment requires wiring them together with private networking, shared volumes and coordinated configuration.
This template packages everything into a single all-in-one container
(nginx + gunicorn + celery + taiga-events, orchestrated by supervisord). A
complete Taiga instance runs with just three services: app, postgres and
rabbitmq. It fits the Railway free tier, auto-creates the first admin user,
and derives the public site URL automatically from your domain.
Common Use Cases
- Self-hosting a full project management suite (Scrum/Kanban) for your team or company without maintaining separate services.
- Replacing commercial project management tools (Jira, Linear, Notion) with an open-source, data-you-own alternative.
- Running a complete multi-process stack on the Railway free tier with minimal monthly cost and zero infrastructure setup.
Dependencies for Taiga Hosting
- PostgreSQL 12+ — main database for all Taiga data.
- RabbitMQ 3.x — message broker used by Celery (async tasks) and taiga-events (real-time notifications/WebSockets).
Deployment Dependencies
- Taiga official site
- Taiga documentation
- taiga-back Docker image
- taiga-front Docker image
- taiga-events Docker image
- Railway documentation
Implementation Details
The template creates three services connected through Railway's private
network (*.railway.internal); only app is exposed publicly:
| Service | Build | Ports | Volume |
|---|---|---|---|
app | docker/app (all-in-one container) | 80 public, 8000, 8888 | /taiga-back/media |
postgres | postgres:12.3 | 5432 (private) | /var/lib/postgresql/data |
rabbitmq | rabbitmq:3.8.34-alpine | 5672 (private) | /var/lib/rabbitmq |
Configuration highlights:
- The public domain target port is set to 80 (the all-in-one container serves the SPA through nginx).
PGDATA=/var/lib/postgresql/data/pgdataavoids the PostgreSQLinitdberror caused by the volume'slost+founddirectory.- Secrets (
POSTGRES_PASSWORD,RABBITMQ_DEFAULT_PASS,TAIGA_SECRET_KEY,ADMIN_INITIAL_PASSWORD) are generated on every deploy with${{secret(32)}}; theappservice references them frompostgresandrabbitmqso nothing needs manual configuration. - On first boot the container runs migrations, loads the default project
templates, collects static files and creates the first admin user
(
admin, password in the project Variables). - The stack is tuned for the free tier (1 gunicorn worker, Celery concurrency
- and can be scaled up by changing
GUNICORN_WORKERS/CELERY_CONCURRENCY.
- and can be scaled up by changing
Why Deploy Taiga 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 Taiga 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
