Deploy Frappe HR

Frappe HR v16 on ERPNext: payroll, leave, attendance, nightly backups

Deploy Frappe HR

Just deployed

/var/lib/mysql

Just deployed

/home/frappe/frappe-bench/sites

Backups

Bucket

Just deployed

Deploy and Host Frappe HR on Railway

Deploy on Railway

Frappe HR (HRMS) is the open-source HR and payroll suite built on Frappe and ERPNext: employees, attendance and check-ins, leave, shifts, expense claims, recruitment, appraisals and payroll with salary slips, plus a mobile-friendly employee app. No per-employee fees. This template runs Frappe HR v16 on ERPNext v16 the way bench setup production runs it on a server, with nightly backups and upgrades handled for you.

About Hosting Frappe HR

The stack is three pieces: Frappe HR, a private MariaDB, and a Railway bucket for backups.

  • Everything Frappe runs, in one service. nginx on the public port, gunicorn, the socket.io realtime server, background workers, the scheduler (leave allocation, attendance and payroll jobs), and Redis for the cache and job queue. They all need the same sites/ folder, and a Railway volume attaches to one service, so they run together.
  • Locked down from the first second. The site is created on first boot with a generated Administrator password, never admin/admin. Public sign-up is off, MariaDB has no public proxy, and the realtime server only accepts connections from your own domain.
  • Nightly backups. Every night at 03:00 UTC the database, the public and private files (employee documents, receipts) and the site config go to the bundled bucket, one tar per weekday, so the last 7 days are always there. erpnext-restore puts one back, into this deployment or a new one.
  • Upgrades that migrate themselves. The first boot of a new version backs up the database and runs bench migrate before serving the site.

Common Use Cases

  • Payroll, salary slips and leave management for a small or mid-sized company, with no per-employee fees
  • An employee self-service app (/hrms) for check-ins, leave requests and expense claims from a phone
  • Recruitment pipelines, onboarding and appraisals next to ERPNext accounting

Dependencies for Frappe HR Hosting

  • MariaDB 11.8 (included, private network only)
  • A Railway bucket for backups (included)

Deployment Dependencies

Implementation Details

Sign in at your service's Railway domain as Administrator with the ERPNEXT_ADMIN_PASSWORD value from the Frappe HR service's Variables tab. The first deploy builds the image and creates the site, so give it about five minutes. The setup wizard then asks for your country, currency, company and fiscal year. Change the password afterwards; the variable is only read on first boot. Employees use the mobile-friendly app at /hrms.

Memory. About 500 MB for Frappe HR and 350 MB for MariaDB once set up. On plans that give a service less than 2 GB, the template runs 1 web worker (4 threads) and 1 background worker. For more users, raise ERPNEXT_WEB_WORKERS and ERPNEXT_BG_WORKERS.

Backups and restore. Backups appear in the Backups bucket as erpnext-Mon.tar … erpnext-Sun.tar. For an extra one before a risky change, run erpnext-backup in a railway ssh session on the Frappe HR service. To restore, run erpnext-restore Mon there (or erpnext-restore /path/to/backup.tar), then restart the service. It replaces the site's database and files and brings over the site's encryption key, so saved passwords keep working in a new deployment too.

Email. Railway only allows outbound SMTP on the Pro plan, and Frappe HR sends leave notifications and salary slips over SMTP. On Pro, add an outgoing account under Email Account. On other plans set new users' passwords yourself (User → Set New Password) instead of emailing invitations.

Custom domain. Add it in the service's Settings → Networking, then set ERPNEXT_URL to https://your.domain so links in emails and PDFs use it.

Why Deploy Frappe HR 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 Frappe HR 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

Backups

Bucket

More templates in this category

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

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