INSTALL GUIDE · RAILWAY
Blue Folder Mail on Railway
Managed hosting from your fork. The repo ships railway.json (Dockerfile builder, /_health check) — you add a volume and the env vars.
Good fit
Railway runs one container with an attached volume — the default local-disk storage fits. Inbound mail is a webhook.
Deploy
- Create a project from your fork Railway builds from railway.json using the included Dockerfile. (Any "Deploy on Railway" template button should point at your fork's URL.)
- Add a Volume mounted at /data
So the SQLite index and sealed blobs persist across deploys.
- Set the env vars
Add RESEND_API_KEY, a random INBOUND_SECRET (openssl rand -hex 24), and ideally BASIC_AUTH_USER / BASIC_AUTH_PASS. Deploy, then open the service URL and create your mailbox.
Storage & sending
- Storage — the volume at /data by default; or S3 for blobs via STORAGE_BACKEND=s3, keeping the SQLite index on the volume. Ciphertext only.
- Sending — verify your domains at resend.com and set RESEND_API_KEY.
Receiving mail — the honest part
Recommended — webhook
Point a provider (Mailgun, SendGrid, Postal, Resend inbound) at https://your-service.up.railway.app/_inbound with your INBOUND_SECRET as the x-inbound-secret header or ?secret=…, forwarding full raw MIME.
Railway is a container platform, not a mail host — the built-in SMTP MTA isn't the path here. Use the webhook.
HTTPS & the front door
TLS on your Railway domain (and custom domains) is automatic. Add a login before putting real mail in it — set BASIC_AUTH_USER / BASIC_AUTH_PASS.
Blue Folder Mail on Railway — a volume, a couple of env vars, deploy. Full reference: DEPLOY.md. Other platforms →