Deploy ConvertX

Private file conversion for images, video, audio and documents

Deploy ConvertX

Just deployed

/app/data

Deploy and Host self hosted ConvertX (File Converter) on Railway

This template deploys the open-source ConvertX file converter as one Railway service with the owner account pre-created, so nobody can claim the first account on your domain.

About Hosting ConvertX open-source software on Railway (self hosted ConvertX template)

Your files stay in your own Railway project, not a third-party conversion site.

Railway handles the build, HTTPS, restarts and the volume. Keep one replica, since local state does not spread across instances.

Why Deploy ConvertX, the open-source file converter on Railway (Railway Free Trial)

Hosted converters like CloudConvert run the infrastructure for you, but every upload passes through their servers under their limits. A self-hosted ConvertX instance keeps uploads in your own service, but you are responsible for its upkeep.

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 ConvertX 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.

Railway vs Other Hosting Providers and VPS for ConvertX self hosting

Here is how Railway compares with raw servers from the big clouds and budget VPS hosts for running ConvertX.

ProviderWhat You Get with RailwayWhat You Get with the Other Provider
DigitalOceanA template with the ConvertX service, a volume at /app/data, generated secrets and a health check.A Droplet or App Platform setup where you manage Docker, firewall, TLS and host updates.
AWSA managed service with the volume and variables defined in the template, with no VPC or instance sizing first.Full EC2, EBS, networking and IAM control, suited to teams already on AWS.
HetznerThe same template steps with no server administration, on usage-based pricing you should estimate.Low-cost servers with generous resources, where you handle OS updates, Docker, backups and reverse proxy.

Choose Railway for managed deployment, a VPS for host-level control.

Common Use Cases for hosted ConvertX

  • Image conversions: Turn HEIC photos from a phone into JPEG or PNG for a website, or batch-convert a folder of TIFF scans without uploading them to a public converter.
  • Audio and video formats: Convert a recorded meeting from one container to another, or pull an audio track out of a video, using the FFmpeg tooling bundled with ConvertX.
  • Office documents: Export a Word file to PDF or turn a spreadsheet into CSV, using the LibreOffice converters that ConvertX ships with.
  • Ebooks: Move an EPUB to MOBI or PDF for an e-reader through the Calibre converters, which is handy when your library contains private or unpublished manuscripts.
  • Private conversions: Handle contracts, medical scans, or client files on your own Railway service, so the files never pass through a third-party conversion website you do not control.

Dependencies for ConvertX Docker hosted on Railway

This template runs ConvertX as one service with no separate database or queue. Keep one replica, since SQLite state cannot be shared.

Deployment Dependencies for Managed ConvertX Service (one Bun service with bundled conversion tools and SQLite, /app/data volume)

The deployment is one Bun service named convertx that listens on port 8080 behind Railway's public domain. It mounts a volume at /app/data and uses /healthcheck as its health check.

Implementation Details for ConvertX (onepush-dev/convertx:v0.20.0-r2 wraps unchanged upstream image with private-port account bootstrap)

The service runs onepush-dev/convertx:v0.20.0-r2, built FROM the official ghcr.io/c4illin/convertx:v0.20.0 image with the application unchanged.

How does ConvertX compare against other tools

ConvertX vs CloudConvert (Hosted File Converter Alternative)

  • Where files go: ConvertX runs on your own Railway service, so uploads and outputs stay in your volume at /app/data.
  • Format coverage: CloudConvert is a hosted service with its own catalogue and interface; ConvertX supports over a thousand formats through its bundled converters, so check the formats you need.
  • Cost model: CloudConvert bills by usage, while ConvertX is free software where you pay only for the Railway compute and storage you use.

ConvertX vs Convertio (Hosted File Converter Alternative)

  • Privacy: Convertio processes files on its hosted platform, while ConvertX keeps conversions inside an instance you control.
  • Setup: Convertio needs no setup and works from a browser tab, which wins for occasional one-off conversions.
  • Customization: ConvertX exposes variables such as FFMPEG_ARGS and the cleanup interval, which hosted services rarely expose.

ConvertX vs local FFmpeg (Command-Line Media Toolkit Alternative)

  • Interface: FFmpeg is a local media toolkit driven from the command line, while ConvertX gives you a multi-format web UI.
  • Scope: FFmpeg covers audio and video very deeply, whereas ConvertX also handles documents, ebooks, images and 3D assets through its bundled converters.
  • Access: FFmpeg runs only where installed; ConvertX works from any browser once deployed.

ConvertX with Docker vs Railway (Container Hosting Comparison)

  • Setup: Docker on a VPS means you manage the host, the volume and the reverse proxy yourself, while the Railway template wires the service and volume for you.
  • Secrets: On Railway the JWT_SECRET and CONVERTX_ADMIN_PASSWORD are generated per deploy, whereas a Docker run needs you to supply them.
  • Persistence: Keep one replica for local persistent state, since Railway attaches a volume to that single service.

How to use ConvertX on Railway?

Steps for your first day after deploy:

  1. Open the service's Variables tab and copy the value of CONVERTX_ADMIN_PASSWORD. It was generated for you and is not shown anywhere else.
  2. Open your Railway domain and sign in with admin@example.com and that password.
  3. Go to Account and change the email and password to values you control. Do this before sharing the URL with anyone.
  4. Upload a file, pick the output format from the list, and start the conversion.
  5. Download the result from the history page. Converted files are removed periodically once they are older than the configured N hours (default 24), so save anything you need.

Public registration is closed, so nobody else can create an account. To check health, request /healthcheck on your domain:

curl -i https://your-domain/healthcheck

A 200 response means the app is up and reachable. It confirms availability only, not that a conversion will succeed.

How to self host ConvertX on other VPS Services (ConvertX self hosting guide)

Clone the Repository

Pull the upstream source at the release tag.

git clone --branch v0.20.0 https://github.com/C4illin/ConvertX.git
cd ConvertX

Install Dependencies

On a VPS, Docker is the simplest route. Install Docker and Docker Compose, then pull the pinned image.

docker pull ghcr.io/c4illin/convertx:v0.20.0

Configure Environment Variables

Set a stable JWT_SECRET so sessions survive restarts, and keep registration closed. JWT_SECRET signs session tokens; generate it once with openssl rand -hex 32, keep it secret, and do not commit it to version control.

services:
  convertx:
    image: ghcr.io/c4illin/convertx:v0.20.0
    ports:
      - "127.0.0.1:3000:3000"
    environment:
      - JWT_SECRET=${JWT_SECRET}
      - ACCOUNT_REGISTRATION=false
      - ALLOW_UNAUTHENTICATED=false
    volumes:
      - ./data:/app/data

Start the ConvertX Application

Bring the service up, then register your owner account over localhost before adding a reverse proxy with HTTPS.

docker compose up -d

Open http://localhost:3000, create the owner account, and only then expose your-domain through a TLS-terminating proxy. Railway handles the public domain, TLS and the persistent volume for you.

Official Pricing of ConvertX (ConvertX pricing)

ConvertX is AGPL-3.0 open-source software, free to self-host with no license fee to the project.

ConvertX hosted vs self hosted comparison (Pricing, features, costs, and more)

There is no hosted subscription bundled with this template.

Monthly cost of self hosting ConvertX on Railway

Railway bills on usage, so cost depends on the RAM and CPU the ConvertX service uses, the /app/data volume size, and other attached services.

System Requirements for Hosting ConvertX on a VPS

VPS sizing depends on file types: video and large documents need more memory and disk than image work.

Frequently Asked Questions (FAQs)

Where do I find the admin password?

Open the service's Variables tab on Railway and copy the value of CONVERTX_ADMIN_PASSWORD.

Can anonymous users convert files without logging in?

No. Registration is also closed, so only the owner account can use the instance.

Which formats can I convert between?

ConvertX supports over a thousand formats, but each one depends on the underlying converter, such as FFmpeg, ImageMagick or Pandoc.

How long do converted files stay on the server?

By default, AUTO_DELETE_EVERY_N_HOURS is 24, which periodically removes files older than 24 hours. This is periodic removal, not an exact retention guarantee. You can change that value or set it to 0 to disable cleanup.

Does changing CONVERTX_ADMIN_PASSWORD reset an existing account?

No. The variable only sets the owner password on first boot. Change the password from the Account page instead.

How do I back up my ConvertX data?

Back up the Railway volume mounted at /app/data, which holds the SQLite database, uploads and outputs.


Template Content

More templates in this category

View Template
Rocky Linux
Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
51
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