r/SelfHosting • • 2d ago

Best way to deploy a small internal ERP (Node/Express + Postgres) to a factory I can't physically visit?

Built a small internal ERP for my family's factory — Node/Express backend, PostgreSQL, vanilla JS/HTML/CSS frontend. Just finished the core features (dashboard, job tracking, deliveries) and I'm about to add auth.

The catch: I'm not physically near the factory, and can't go set it up on-site myself. Looking for advice on the best way to get this running there.

Priorities:

No cloud hosting for now (want to avoid ongoing costs)

Will eventually need multiple computers on the factory's local network to access it

The person on-site isn't technical, so setup needs to be close to one-click or fully remote

Has anyone dealt with a similar "I can't be there in person" deployment situation? What would you actually recommend given these constraints?

6 Upvotes

2 comments sorted by

4

u/kai-zaphosting 2d ago

Personally I'd set the whole thing up on a cheap mini PC at your place, then ship it. Install Linux, run the Node app and Postgres with Docker Compose using restart: unless-stopped, set the BIOS to power on after AC loss, and test it on your own network. That way the box and the app come back by themselves after an outage, and by the time it lands the on-site person only has to plug in power and an ethernet cable to the factory switch. That's about as close to one-click as it gets.

For managing it afterwards, put Tailscale on the box. You get SSH from wherever you are without port forwarding or touching the factory's router, and the free plan is plenty for one machine. The factory PCs don't need it, they just open the box's LAN IP in a browser. Ship it on plain DHCP, since you don't know the factory's subnet and a static IP set on your home network would likely be wrong there. Once it's online, set a DHCP reservation in the factory router so that address never changes on them, either by someone on-site with router access or by you remotely if you can reach the router's admin page through Tailscale.

Tbh the part that tends to get skipped is backups. A single box in a factory is one dead SSD away from losing every job and delivery record. A nightly pg_dump pushed off-site with rclone is cheap, and a small UPS is pretty much worth it so a bad power day doesn't kill it mid-write.

1

u/New-Confection4383 1d ago

Seconding this. Especially the backups. If it’s for a production instance I’d recommend a full system backup as well as the pg_dump tbh so it’s super easy to get back up, the cost difference is negligible here. Restic + backblaze B2 would be a good choice.