Railway

Deploy Taiga

Deploy Taiga, open source Scrum/Kanban project management, on Railway.

Deploy Taiga

/taiga-back/media

Just deployed

/var/lib/rabbitmq

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

Implementation Details

The template creates three services connected through Railway's private network (*.railway.internal); only app is exposed publicly:

ServiceBuildPortsVolume
appdocker/app (all-in-one container)80 public, 8000, 8888/taiga-back/media
postgrespostgres:12.35432 (private)/var/lib/postgresql/data
rabbitmqrabbitmq:3.8.34-alpine5672 (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/pgdata avoids the PostgreSQL initdb error caused by the volume's lost+found directory.
  • Secrets (POSTGRES_PASSWORD, RABBITMQ_DEFAULT_PASS, TAIGA_SECRET_KEY, ADMIN_INITIAL_PASSWORD) are generated on every deploy with ${{secret(32)}}; the app service references them from postgres and rabbitmq so 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
    1. and can be scaled up by changing GUNICORN_WORKERS / CELERY_CONCURRENCY.

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

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
40
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
51