Railway

Deploy immich

Self-hosted Google Photos alternative with AI-powered search

Deploy immich

Just deployed

/usr/src/app/upload

/var/lib/postgresql/data

Just deployed

/cache

Just deployed

/data

Deploy and Host Immich on Railway

Immich is an open-source, self-hosted photo and video backup solution. It provides a Google Photos-like experience with automatic mobile backup, facial recognition, object detection, and album sharing ΓÇö all running on your own infrastructure.

About Hosting Immich

Hosting Immich on Railway gives you a fully managed environment for your personal media library without maintaining servers. Railway handles infrastructure provisioning, networking, and persistent storage so you can focus on using Immich rather than running it. The template wires together the Immich server, the machine-learning sidecar (for smart search and facial recognition), a PostgreSQL database, and a Redis cache ΓÇö all on Railway's private network. Volumes are attached automatically so your photos, thumbnails, and ML model cache survive restarts and redeployments.

Common Use Cases

  • Personal photo and video backup from iOS and Android devices
  • Self-hosted alternative to Google Photos or iCloud with full data ownership
  • Shared family photo library with multi-user support and album sharing
  • AI-powered smart search and face grouping across large media collections
  • Secure, private media archive with no third-party cloud dependency

Dependencies for Immich Hosting

  • PostgreSQL (pgvecto.rs extension required ΓÇö use the Immich-compatible image)
  • Redis (Railway-managed)
  • Immich server service (ghcr.io/immich-app/immich-server:release)
  • Immich machine-learning service (ghcr.io/immich-app/immich-machine-learning:release)

Deployment Dependencies

Implementation Details

The template uses two custom Dockerfiles that pull the official Immich release images:

  • server/Dockerfile ΓåÆ ghcr.io/immich-app/immich-server:release
  • ml/Dockerfile ΓåÆ ghcr.io/immich-app/immich-machine-learning:release

Service-to-service communication (server → ML sidecar) uses Railway's private network via ${{immich-ml.RAILWAY_PRIVATE_DOMAIN}} so traffic never leaves the internal network. Volumes are mounted at /usr/src/app/upload (photos) and /cache (ML models).

Why Deploy Immich 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 Immich 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
Postgres Backup to Cloudflare R2 (S3-Compatible)
Automated PostgreSQL backups to S3-compatible storage with encryption

Aman
View Template
ReadySet
A lightweight caching engine for Postgres

Milo
View Template
Simple S3
Deploy a S3-compatible storage service with a pre-named bucket.

Joey Chilson