---
title: "Deploy Tunecamp"
description: "Template for Tunecamp a self-hosted music streaming platform."
category: "Other"
url: https://railway.com/deploy/tunecamp
---

# Deploy Tunecamp

Template for Tunecamp a self-hosted music streaming platform.

**[Deploy Tunecamp on Railway](https://railway.com/template/tunecamp)**

- **Creator:** Francesco Bruno's Projects
- **Category:** Other

## Template content

### scobru/tunecamp

- **Image:** scobru/tunecamp
- **Public domain:** Yes

## Documentation

# Deploy and Host Tunecamp on Railway

Tunecamp is a decentralized, self-hosted music streaming platform designed for independent artists and record labels. It features a modern web interface, Subsonic API compatibility for mobile apps, built-in HLS live streaming, and decentralized federation via ActivityPub and Zen signaling, allowing you to control and monetize your catalog.

## About Hosting Tunecamp

Deploying Tunecamp on Railway is fast and secure. The template sets up a Node.js-based environment using the official Dockerfile. It automates container building, environment configuration, and exposes the app on port 1970. To ensure your database and music catalog persist across redeployments, the template mounts a persistent volume to the `/data` directory. You will configure critical environment variables like `TUNECAMP_JWT_SECRET` for secure authentication, and direct your media uploads to the persistent `/data/music` directory. Optional features like Telegram bots, Stripe payments, and Base network crypto transactions can be enabled instantly via variables.

## Why Deploy?
By deploying Tunecamp 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.

## Common Use Cases

- **Self-hosted streaming server**: Stream your personal music catalog to your web browser or any Subsonic-compatible mobile app (like DSub, Symfonium, or Tempo).
- **Decentralized music publication**: Build a federated profile, connect with the Fediverse (via ActivityPub), and distribute your releases directly to fans.
- **Monetized independent store**: Sell your digital music using either Stripe credit card checkouts or on-chain crypto transactions (USDC/ETH on Base).

## Dependencies for Tunecamp Hosting

- **Persistent Volume**: A Railway volume mounted at `/data` is required to store the SQLite database and your media/downloads catalog.
- **FFmpeg, Python, and Chromium**: These are pre-installed in the Docker image during the build process to handle on-the-fly audio transcoding, waveform generation, and scraper integration.

### Deployment Dependencies

- [TuneCamp GitHub Repository](https://github.com/scobru/tunecamp)
- [Railway Volumes Reference Documentation](https://docs.railway.app/reference/volumes)

### Implementation Details 

The template builds TuneCamp directly from source using a multi-stage Dockerfile. It compiles the React (Vite) frontend web app, builds the TypeScript/Node.js backend server, and bundles the runtime utilities. It includes built-in concurrency controls for audio processing to prevent CPU saturation:

```env
TUNECAMP_PORT=1970
TUNECAMP_MAX_LIVE_TRANSCODES=8
TUNECAMP_TRANSCODE_CACHE_MAX_BYTES=2147483648


## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — [Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀
- [Foundry Virtual Tabletop](https://railway.com/deploy/X5tR6G) — A Self-Hosted & Modern Roleplaying Platform
- [Letta Code Remote](https://railway.com/deploy/letta-code-remote) — Run a Letta Code agent 24/7. No inbound ports, just deploy.

Open this page in a browser: https://railway.com/deploy/tunecamp
