Railway

Deploy grimmory

Grimmory is a self-hosted digital library for comics and books

Deploy grimmory

Deploy and Host Grimmory on Railway

About Hosting

Grimmory is a self-hosted digital library and book manager for EPUB, PDF, comics, and audiobooks. It is the community successor to BookLore and keeps the same general runtime shape: one web application plus one MariaDB database on private networking.

This Railway template mirrors the working grimmory deployment closely, but fixes the database side for Railway portability. The app service runs from the official grimmory/grimmory:v2.3.0 image on port 6060, uses GET /api/v1/healthcheck for health checks, and stores runtime data on a persistent volume mounted at /app/data. The database runs as a private mariadb:11.4 sidecar with its data volume mounted at /var/lib/mysql.

Use template_env_grimmory.json for the app service variables and template_env_mariadb.json for the database bootstrap variables.

Why Deploy

  • Run a private, self-hosted digital library without depending on third-party SaaS.
  • Get smart shelves, metadata lookup, a built-in reader, and multi-user support in one stack.
  • Keep database traffic on Railway private networking while exposing only the web app publicly.
  • Start from the official Grimmory image with a pinned release tag instead of a moving latest.
  • Leave room to add extra library storage later with optional /books or /bookdrop mounts.

Common Use Cases

  • Personal ebook, PDF, and comic library with browser reading and progress sync.
  • Family or small-team shared library with separate accounts and reading state.
  • Kobo, KOReader, and OPDS-friendly library server hosted on Railway.
  • Migration path for existing BookLore users who want the Grimmory fork.

Dependencies for Deployment

Deployment Dependencies

DependencyDetails
App Imagegrimmory/grimmory:v2.3.0
Database Imagemariadb:11.4
App Port6060
Database Port3306
Health CheckGET /api/v1/healthcheck
Persistent Volumes/app/data on the app service, /var/lib/mysql on the database service
Required App VarsPORT, BOOKLORE_PORT, DATABASE_URL, DATABASE_USERNAME, DATABASE_PASSWORD
Recommended App VarsTZ, USER_ID, GROUP_ID, DISK_TYPE, SWAGGER_ENABLED, FORCE_DISABLE_OIDC
Required Database VarsMYSQL_DATABASE, MYSQL_USER, MYSQL_PASSWORD, MYSQL_ROOT_PASSWORD
Public AccessRailway public domain routed to PORT=6060
Private NetworkingDATABASE_URL points at ${{mariadb.RAILWAY_PRIVATE_DOMAIN}}:3306

Template Content

More templates in this category

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

Lucas
View Template
(v1) Simple Medusa Backend
Deploy an ecommerce backend and admin using Medusa

Shahed Nasser
View Template
peppermint
Docker-compose port for peppermint.sh

HamiltonAI