---
title: "Deploy ERPNext"
description: "Open-source ERP: accounting, inventory, sales, HR, all in one service"
category: "Other"
url: https://railway.com/deploy/erpnext-2
---

# Deploy ERPNext

Open-source ERP: accounting, inventory, sales, HR, all in one service

**[Deploy ERPNext on Railway](https://railway.com/template/erpnext-2)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/erpnext-2/manifest.json

- **Creator:** Agaz Self-Host
- **Category:** Other

## Template content

### Redis https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/redis.svg

- **Image:** redis:7.4.12-alpine@sha256:7b1753b4c5ad8458906c272a8132b8c15f5557b000379eb115fb239706a384b7
- **Start command:** `/bin/sh -c 'rm -rf /data/lost+found; chown redis:redis /data; exec docker-entrypoint.sh redis-server --requirepass "$REDIS_PASSWORD" --appendonly yes --dir /data'`

### ERPNext https://cdn.jsdelivr.net/gh/selfhst/icons/svg/frappe-erpnext.svg

- **Image:** frappe/erpnext:v16.54.0@sha256:32145acc7f699dc598ca141018a95ebf8e56f516d4a0e76beb7287ae68b303b8
- **Start command:** `/bin/bash -c "echo IyEvYmluL2Jhc2gKIyBFUlBOZXh0IGFsbC1pbi1vbmUgc3RhcnQgc2NyaXB0IGZvciBSYWlsd2F5IChodHRwczovL2dpdGh1Yi5jb20vYWFsZmF0aC9lcnBuZXh0LXJhaWx3YXktdGVtcGxhdGUpCiMgUnVucyBuZ2lueCwgZ3VuaWNvcm4sIHNvY2tldGlvLCBvbmUgUlEgd29ya2VyIGFuZCB0aGUgc2NoZWR1bGVyIGluIG9uZSBjb250YWluZXIsCiMgYmVjYXVzZSBSYWlsd2F5IHZvbHVtZXMgY2FuJ3QgYmUgc2hhcmVkIGJldHdlZW4gc2VydmljZXMuCnNldCAtZXVvIHBpcGVmYWlsCgpCRU5DSD0vaG9tZS9mcmFwcGUvZnJhcHBlLWJlbmNoClNJVEU9IiR7U0lURV9OQU1FOi1lcnAubG9jYWx9IgpleHBvcnQgUE9SVD0iJHtQT1JUOi04MDgwfSIKCiMgMS4gQXMgcm9vdCAoUkFJTFdBWV9SVU5fVUlEPTApOiBtYWtlIHRoZSB2b2x1bWUgd3JpdGFibGUgZm9yIHRoZSBmcmFwcGUgdXNlciwgdGhlbiBkcm9wIHByaXZpbGVnZXMuCmlmIFsgIiQoaWQgLXUpIiA9ICIwIiBdOyB0aGVuCiAgcm0gLXJmICIkQkVOQ0gvc2l0ZXMvbG9zdCtmb3VuZCIKICBpZiBbICIkKHN0YXQgLWMgJXUgIiRCRU5DSC9zaXRlcyIpIiAhPSAiMTAwMCIgXTsgdGhlbiBjaG93biAtUiBmcmFwcGU6cm9vdCAiJEJFTkNIL3NpdGVzIjsgZmkKICBjaG93biAtUiBmcmFwcGU6cm9vdCAiJEJFTkNIL2xvZ3MiIC9ldGMvbmdpbngvY29uZi5kIDI+L2Rldi9udWxsIHx8IHRydWUKICBleGVjIHJ1bnVzZXIgLXUgZnJhcHBlIC0tIGJhc2ggIiQwIiAiJEAiCmZpCgpjZCAiJEJFTkNIIgp1bWFzayAwMDAyCiMgUmUtb3BlbiBzdGRvdXQvc3RkZXJyIGFzIHBpcGVzIG93bmVkIGJ5IGZyYXBwZSwgc28gbmdpbnggY2FuIG9wZW4gL2Rldi9zdGRvdXQgYW5kIC9kZXYvc3RkZXJyLgpleGVjID4gPihjYXQpIDI+ID4oY2F0ID4mMikKbG9nKCkgeyBlY2hvICJbZXJwbmV4dC1yYWlsd2F5XSAkKiI7IH0KCjogIiR7REJfSE9TVDo/REJfSE9TVCBpcyByZXF1aXJlZH0iCjogIiR7REJfUk9PVF9QQVNTV09SRDo/REJfUk9PVF9QQVNTV09SRCBpcyByZXF1aXJlZH0iCjogIiR7UkVESVNfVVJMOj9SRURJU19VUkwgaXMgcmVxdWlyZWR9IgpEQl9QT1JUPSIke0RCX1BPUlQ6LTMzMDZ9IgoKIyAyLiBCZW5jaCBmaWxlcyB0aGF0IHVwc3RyZWFtIGtlZXBzIGluIHRoZSBzaGFyZWQgc2l0ZXMgdm9sdW1lLgpscyAtMSBhcHBzID4gc2l0ZXMvYXBwcy50eHQKcm0gLXJmIHNpdGVzL2Fzc2V0cyAmJiBsbiAtcyAiJEJFTkNIL2Fzc2V0cyIgc2l0ZXMvYXNzZXRzClsgLWYgc2l0ZXMvY29tbW9uX3NpdGVfY29uZmlnLmpzb24gXSB8fCBlY2hvICd7fScgPiBzaXRlcy9jb21tb25fc2l0ZV9jb25maWcuanNvbgoKd2FpdF9mb3IoKSB7ICMgaG9zdCBwb3J0IG5hbWUKICBsb2NhbCBpCiAgZm9yIGkgaW4gJChzZXEgMSA5MCk7IGRvCiAgICBpZiBlbnYvYmluL3B5dGhvbiAtYyAiaW1wb3J0IHNvY2tldCxzeXM7IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoc3lzLmFyZ3ZbMV0sIGludChzeXMuYXJndlsyXSkpLCAzKSIgIiQxIiAiJDIiIDI+L2Rldi9udWxsOyB0aGVuCiAgICAgIGxvZyAiJDMgaXMgcmVhY2hhYmxlIjsgcmV0dXJuIDAKICAgIGZpCiAgICBzbGVlcCAyCiAgZG9uZQogIGxvZyAiJDMgYXQgJDE6JDIgbm90IHJlYWNoYWJsZSI7IGV4aXQgMQp9CndhaXRfZm9yICIkREJfSE9TVCIgIiREQl9QT1JUIiBNYXJpYURCClJFRElTX0hPU1RQT1JUPSIke1JFRElTX1VSTCMjKkB9IjsgUkVESVNfSE9TVFBPUlQ9IiR7UkVESVNfSE9TVFBPUlQjcmVkaXM6Ly99IjsgUkVESVNfSE9TVFBPUlQ9IiR7UkVESVNfSE9TVFBPUlQlJS8qfSIKd2FpdF9mb3IgIiR7UkVESVNfSE9TVFBPUlQlOip9IiAiJHtSRURJU19IT1NUUE9SVCMjKjp9IiBSZWRpcwoKYmVuY2ggc2V0LWNvbmZpZyAtZyBkYl9ob3N0ICIkREJfSE9TVCIgPi9kZXYvbnVsbApiZW5jaCBzZXQtY29uZmlnIC1ncCBkYl9wb3J0ICIkREJfUE9SVCIgPi9kZXYvbnVsbApiZW5jaCBzZXQtY29uZmlnIC1nIHJlZGlzX2NhY2hlICIkUkVESVNfVVJMIiA+L2Rldi9udWxsCmJlbmNoIHNldC1jb25maWcgLWcgcmVkaXNfcXVldWUgIiRSRURJU19VUkwiID4vZGV2L251bGwKYmVuY2ggc2V0LWNvbmZpZyAtZyByZWRpc19zb2NrZXRpbyAiJFJFRElTX1VSTCIgPi9kZXYvbnVsbApiZW5jaCBzZXQtY29uZmlnIC1ncCBzb2NrZXRpb19wb3J0IDkwMDAgPi9kZXYvbnVsbAojIHNvY2tldGlvIGF1dGhlbnRpY2F0ZXMgc2Vzc2lvbnMgYnkgY2FsbGluZyB0aGUgYmFja2VuZDsga2VlcCB0aGF0IGNhbGwgb24gbG9vcGJhY2suCmJlbmNoIHNldC1jb25maWcgLWcgd2Vic2VydmVyX2hvc3QgMTI3LjAuMC4xID4vZGV2L251bGwKYmVuY2ggc2V0LWNvbmZpZyAtZ3Agd2Vic2VydmVyX3BvcnQgODAwMCA+L2Rldi9udWxsCgojIFdoaWxlIHRoZSBzaXRlIGlzIGJlaW5nIGNyZWF0ZWQgb3IgbWlncmF0ZWQgKG1pbnV0ZXMpLCBzZXJ2ZSBhIGhvbGRpbmcgcGFnZSBvbiBQT1JUIHNvIFJhaWx3YXkncwojIGhlYWx0aCBjaGVjayAoMzAwIHMgYnkgZGVmYXVsdCkgcGFzc2VzIGFuZCB2aXNpdG9ycyBzZWUgd2hhdCdzIGhhcHBlbmluZy4KU0VUVVBfUElEPSIiCnNldHVwX3BhZ2Vfc3RhcnQoKSB7CiAgWyAtbiAiJFNFVFVQX1BJRCIgXSAmJiByZXR1cm4gMAogIGNhdCA+IC90bXAvbmdpbngtc2V0dXAuY29uZiA8PE5HSU5YCndvcmtlcl9wcm9jZXNzZXMgMTsKcGlkIC90bXAvbmdpbngtc2V0dXAucGlkOwplcnJvcl9sb2cgc3RkZXJyOwpldmVudHMgeyB3b3JrZXJfY29ubmVjdGlvbnMgNjQ7IH0KaHR0cCB7CiAgYWNjZXNzX2xvZyBvZmY7CiAgc2VydmVyIHsKICAgIGxpc3RlbiAkUE9SVDsKICAgIGxvY2F0aW9uID0gL2FwaS9tZXRob2QvcGluZyB7IGRlZmF1bHRfdHlwZSBhcHBsaWNhdGlvbi9qc29uOyByZXR1cm4gMjAwICd7Im1lc3NhZ2UiOiJwb25nIn0nOyB9CiAgICBsb2NhdGlvbiAvIHsKICAgICAgZGVmYXVsdF90eXBlIHRleHQvaHRtbDsKICAgICAgYWRkX2hlYWRlciBSZXRyeS1BZnRlciAzMCBhbHdheXM7CiAgICAgIHJldHVybiA1MDMgJzwhZG9jdHlwZSBodG1sPjxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjIwIj48dGl0bGU+RVJQTmV4dCBpcyBzdGFydGluZzwvdGl0bGU+PHAgc3R5bGU9ImZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7bWFyZ2luOjNlbSI+RVJQTmV4dCBpcyBiZWluZyBzZXQgdXAgKGZpcnN0IHN0YXJ0IG9yIHVwZ3JhZGUpLiBUaGlzIHRha2VzIGEgZmV3IG1pbnV0ZXM7IHRoZSBwYWdlIHJlbG9hZHMgYnkgaXRzZWxmLjwvcD4nOwogICAgfQogIH0KfQpOR0lOWAogIG5naW54IC1jIC90bXAvbmdpbngtc2V0dXAuY29uZiAtZyAnZGFlbW9uIG9mZjsnICYgU0VUVVBfUElEPSQhCn0Kc2V0dXBfcGFnZV9zdG9wKCkgewogIFsgLXogIiRTRVRVUF9QSUQiIF0gJiYgcmV0dXJuIDAKICBraWxsIC1URVJNICIkU0VUVVBfUElEIiAyPi9kZXYvbnVsbDsgd2FpdCAiJFNFVFVQX1BJRCIgMj4vZGV2L251bGw7IFNFVFVQX1BJRD0iIgp9CgojIDMuIENyZWF0ZSB0aGUgc2l0ZSBvbiBmaXJzdCBzdGFydDsgbWlncmF0ZSB3aGVuIHRoZSBpbWFnZSB2ZXJzaW9uIGNoYW5nZXMuClZFUlNJT049IiQobHMgLTEgYXBwcyB8IHdoaWxlIHJlYWQgLXIgYTsgZG8gcHJpbnRmICclcz0lcyAnICIkYSIgIiQoc2VkIC1uICdzL15fX3ZlcnNpb25fXyA9ICJcKC4qXCkiL1wxL3AnICJhcHBzLyRhLyRhL19faW5pdF9fLnB5IikiOyBkb25lKSIKaWYgWyAhIC1mICJzaXRlcy8kU0lURS8ucmFpbHdheS1pbnN0YWxsZWQiIF07IHRoZW4KICA6ICIke0FETUlOX1BBU1NXT1JEOj9BRE1JTl9QQVNTV09SRCBpcyByZXF1aXJlZCBmb3IgdGhlIGZpcnN0IHN0YXJ0fSIKICBsb2cgIkNyZWF0aW5nIHNpdGUgJFNJVEUgKGZpcnN0IHN0YXJ0LCB0YWtlcyBhIGZldyBtaW51dGVzKSIKICBzZXR1cF9wYWdlX3N0YXJ0CiAgYmVuY2ggbmV3LXNpdGUgIiRTSVRFIiAtLWZvcmNlIFwKICAgIC0tbWFyaWFkYi11c2VyLWhvc3QtbG9naW4tc2NvcGU9JyUnIFwKICAgIC0tZGItcm9vdC11c2VybmFtZSByb290IC0tZGItcm9vdC1wYXNzd29yZCAiJERCX1JPT1RfUEFTU1dPUkQiIFwKICAgIC0tYWRtaW4tcGFzc3dvcmQgIiRBRE1JTl9QQVNTV09SRCIgXAogICAgLS1pbnN0YWxsLWFwcCBlcnBuZXh0IC0tc2V0LWRlZmF1bHQKICBiZW5jaCAtLXNpdGUgIiRTSVRFIiBzY2hlZHVsZXIgZW5hYmxlCiAgIyBKb2IgdHlwZXMgYXJlIHN0YW1wZWQgaW4gdGhlIGluc3RhbGwgdGltZXpvbmUgKEFzaWEvS29sa2F0YSk7IGlmIHRoZSBzZXR1cCB3aXphcmQgbGF0ZXIgcGlja3MgYQogICMgdGltZXpvbmUgd2VzdCBvZiBpdCwgZXZlcnkgam9iJ3MgZmlyc3QgcnVuIGxhbmRzIGhvdXJzIGluIHRoZSBmdXR1cmUuIEJhY2tkYXRlIHNvIHRoZXkgcnVuIG9uIHRoZSBuZXh0IHRpY2suCiAgYmVuY2ggLS1zaXRlICIkU0lURSIgbWFyaWFkYiAtZSAiVVBEQVRFIFxgdGFiU2NoZWR1bGVkIEpvYiBUeXBlXGAgU0VUIGNyZWF0aW9uPScyMDAwLTAxLTAxJyBXSEVSRSBuYW1lID4gJycgQU5EIGxhc3RfZXhlY3V0aW9uIElTIE5VTEwiCiAgZWNobyAiJFZFUlNJT04iID4gInNpdGVzLyRTSVRFLy5yYWlsd2F5LXZlcnNpb24iCiAgdG91Y2ggInNpdGVzLyRTSVRFLy5yYWlsd2F5LWluc3RhbGxlZCIKZWxpZiBbICIkKGNhdCAic2l0ZXMvJFNJVEUvLnJhaWx3YXktdmVyc2lvbiIgMj4vZGV2L251bGwpIiAhPSAiJFZFUlNJT04iIF07IHRoZW4KICBsb2cgIkFwcCB2ZXJzaW9ucyBjaGFuZ2VkICgkVkVSU0lPTiksIHJ1bm5pbmcgYmVuY2ggbWlncmF0ZSIKICBzZXR1cF9wYWdlX3N0YXJ0CiAgYmVuY2ggLS1zaXRlICIkU0lURSIgbWlncmF0ZQogIGVjaG8gIiRWRVJTSU9OIiA+ICJzaXRlcy8kU0lURS8ucmFpbHdheS12ZXJzaW9uIgpmaQpiZW5jaCB1c2UgIiRTSVRFIiA+L2Rldi9udWxsCmlmIFsgLW4gIiR7UkFJTFdBWV9QVUJMSUNfRE9NQUlOOi19IiBdOyB0aGVuCiAgYmVuY2ggLS1zaXRlICIkU0lURSIgc2V0LWNvbmZpZyBob3N0X25hbWUgImh0dHBzOi8vJFJBSUxXQVlfUFVCTElDX0RPTUFJTiIgPi9kZXYvbnVsbApmaQoKIyA0LiBuZ2lueCBjb25maWcgZnJvbSB0aGUgaW1hZ2UgdGVtcGxhdGU7IE9yaWdpbiBmb2xsb3dzIHRoZSByZXF1ZXN0IGhvc3Qgc28gc29ja2V0aW8gYWNjZXB0cyBpdC4KZXhwb3J0IEJBQ0tFTkQ9MTI3LjAuMC4xOjgwMDAgU09DS0VUSU89MTI3LjAuMC4xOjkwMDAgTkdJTlhfTElTVEVOX1BPUlQ9IiRQT1JUIiBcCiAgVVBTVFJFQU1fUkVBTF9JUF9BRERSRVNTPSIke1VQU1RSRUFNX1JFQUxfSVBfQUREUkVTUzotMC4wLjAuMC8wfSIgVVBTVFJFQU1fUkVBTF9JUF9IRUFERVI9WC1Gb3J3YXJkZWQtRm9yIFwKICBVUFNUUkVBTV9SRUFMX0lQX1JFQ1VSU0lWRT1vZmYgRlJBUFBFX1NJVEVfTkFNRV9IRUFERVI9IiRTSVRFIiBQUk9YWV9SRUFEX1RJTUVPVVQ9MTIwIFwKICBDTElFTlRfTUFYX0JPRFlfU0laRT0iJHtDTElFTlRfTUFYX0JPRFlfU0laRTotNTBtfSIKIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MyMDE2CmVudnN1YnN0ICcke0JBQ0tFTkR9ICR7U09DS0VUSU99ICR7TkdJTlhfTElTVEVOX1BPUlR9ICR7VVBTVFJFQU1fUkVBTF9JUF9BRERSRVNTfSAke1VQU1RSRUFNX1JFQUxfSVBfSEVBREVSfSAke1VQU1RSRUFNX1JFQUxfSVBfUkVDVVJTSVZFfSAke0ZSQVBQRV9TSVRFX05BTUVfSEVBREVSfSAke1BST1hZX1JFQURfVElNRU9VVH0gJHtDTElFTlRfTUFYX0JPRFlfU0laRX0nIFwKICA8IC90ZW1wbGF0ZXMvbmdpbngvZnJhcHBlLmNvbmYudGVtcGxhdGUgXAogIHwgc2VkICdzI3Byb3h5X3NldF9oZWFkZXIgT3JpZ2luIC4qI3Byb3h5X3NldF9oZWFkZXIgT3JpZ2luICRwcm94eV94X2ZvcndhcmRlZF9wcm90bzovLyRob3N0OyMnIFwKICA+IC9ldGMvbmdpbngvY29uZi5kL2ZyYXBwZS5jb25mCnNlZCAtZSAicy9ed29ya2VyX3Byb2Nlc3NlcyAuKi93b3JrZXJfcHJvY2Vzc2VzICR7TkdJTlhfV09SS0VSUzotMn07LyIgLWUgJy9ed29ya2VyX2NwdV9hZmZpbml0eS9kJyAvZXRjL25naW54L25naW54LmNvbmYgPiAvdG1wL25naW54LmNvbmYKCnNldHVwX3BhZ2Vfc3RvcAoKIyA1LiBSdW4gZXZlcnkgcHJvY2VzczsgaWYgb25lIGV4aXRzLCBzdG9wIHRoZSByZXN0IHNvIFJhaWx3YXkgcmVzdGFydHMgdGhlIGNvbnRhaW5lci4KcGlkcz0oKQpzdGFydCgpIHsgbG9nICJzdGFydGluZyAkMSI7IHNoaWZ0OyAiJEAiICYgcGlkcys9KCQhKTsgfQp0cmFwICdraWxsIC1URVJNICIke3BpZHNbQF19IiAyPi9kZXYvbnVsbDsgd2FpdCAiJHtwaWRzW0BdfSI7IGV4aXQgMCcgVEVSTSBJTlQKc3RhcnQgZ3VuaWNvcm4gZW52L2Jpbi9ndW5pY29ybiAtLWNoZGlyPSIkQkVOQ0gvc2l0ZXMiIC0tYmluZD0xMjcuMC4wLjE6ODAwMCBcCiAgLS10aHJlYWRzPSIke0dVTklDT1JOX1RIUkVBRFM6LTR9IiAtLXdvcmtlcnM9IiR7R1VOSUNPUk5fV09SS0VSUzotMn0iIC0td29ya2VyLWNsYXNzPWd0aHJlYWQgXAogIC0td29ya2VyLXRtcC1kaXI9L2Rldi9zaG0gLS10aW1lb3V0PTEyMCAtLXByZWxvYWQgZnJhcHBlLmFwcDphcHBsaWNhdGlvbgpzdGFydCBzb2NrZXRpbyBub2RlICIkQkVOQ0gvYXBwcy9mcmFwcGUvc29ja2V0aW8uanMiCnN0YXJ0IHdvcmtlciBiZW5jaCB3b3JrZXIgLS1xdWV1ZSBsb25nLGRlZmF1bHQsc2hvcnQKc3RhcnQgc2NoZWR1bGVyIGJlbmNoIHNjaGVkdWxlCnN0YXJ0IG5naW54IG5naW54IC1jIC90bXAvbmdpbnguY29uZiAtZyAnZGFlbW9uIG9mZjsnCnNldCArZQp3YWl0IC1uICIke3BpZHNbQF19Igpjb2RlPSQ/CmxvZyAiYSBwcm9jZXNzIGV4aXRlZCB3aXRoIGNvZGUgJGNvZGUsIHN0b3BwaW5nIHRoZSBjb250YWluZXIiCmtpbGwgLVRFUk0gIiR7cGlkc1tAXX0iIDI+L2Rldi9udWxsCndhaXQgIiR7cGlkc1tAXX0iCmV4aXQgMQo= | base64 -d > /tmp/start.sh && exec bash /tmp/start.sh"`
- **Health check:** /api/method/ping
- **Public domain:** Yes

### MariaDB https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/mariadb.svg

- **Image:** mariadb:11.8.9@sha256:c4124d1afa875e47f2892edf26b482fa54f796e2f342d3717a04ca091a22a9bd
- **Start command:** `/bin/sh -c 'rm -rf /var/lib/mysql/lost+found; export MARIADB_AUTO_UPGRADE=1; exec docker-entrypoint.sh mariadbd --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --skip-character-set-client-handshake --innodb-snapshot-isolation=OFF'`

## Documentation

# Deploy and Host ERPNext on Railway

ERPNext is a free, open-source ERP system built on the Frappe framework. It covers accounting, invoicing, inventory, purchasing, sales, CRM, manufacturing, projects and HR in one web application, with role-based permissions, a REST API, customizable forms and reports, and background jobs for emails, reports and scheduled tasks.

## About Hosting ERPNext

Hosting ERPNext means running several processes from the same code: the gunicorn web backend, an nginx front end that serves assets, a Node.js socketio server for realtime updates, background workers and a scheduler. They need MariaDB with utf8mb4 settings, Redis for cache and queues, and a shared `sites` folder holding the site config, encryption key and uploaded files. Upstream Docker setups share that folder between containers. Railway volumes attach to one service only, so this template runs every ERPNext process in a single service on one volume. On first start it creates the site and generates the Administrator password. On image upgrades it runs `bench migrate`.

## Common Use Cases

* Accounting, invoicing and payments for small and mid-sized businesses
* Inventory, purchasing and sales order management for trading or manufacturing companies
* CRM, projects, timesheets and HR records kept in one system with a single login

## Dependencies for ERPNext Hosting

* MariaDB 11.8 (database, with Frappe's utf8mb4 settings)
* Redis 7.4 (cache, background job queue and realtime events)

### Deployment Dependencies

* [ERPNext v16.54.0 release](https://github.com/frappe/erpnext/releases/tag/v16.54.0)
* [Official frappe/erpnext Docker image](https://hub.docker.com/r/frappe/erpnext)
* [frappe_docker, the upstream container setup](https://github.com/frappe/frappe_docker)
* [Start script used by this template](https://github.com/aalfath/erpnext-railway-template)

### Implementation Details

The template has three services:

* **ERPNext**: the official `frappe/erpnext:v16.54.0` image, pinned by digest, with a volume on `/home/frappe/frappe-bench/sites`. Its start command runs nginx on `PORT`, gunicorn, the socketio server, one worker for the long, default and short queues, and the scheduler. If one of them stops, the service restarts.
* **MariaDB**: the official `mariadb:11.8` image with a volume and a generated root password.
* **Redis**: the official `redis:7.4-alpine` image with a volume, append-only persistence and a generated password.

After the deploy finishes, the first start takes about 3 to 10 minutes while the site is created. Until then the URL shows a "being set up" page. Then sign in as `Administrator`, using the `ADMIN_PASSWORD` value from the ERPNext service's Variables tab, and complete the setup wizard. Back up the ERPNext and MariaDB volumes before you change the image version.

## Why Deploy ERPNext 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 ERPNext 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.



## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — 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/erpnext-2
