Deploy
Click Deploy on Railway. Sign in if prompted.
Pick a project name and a region close to you (US-East, EU-West, AP-Southeast, etc.).
Railway provisions a service from
ghcr.io/mddanishyusuf/maillayer-pro:1, attaches a 1 GB volume at/app/data, and assigns a*.up.railway.appURL.Visit the URL once the deploy goes green. Sign up — the first account becomes the owner.
AUTH_SECRET
The container generates one on first boot and writes it to /app/data/.auth_secret. Subsequent restarts read the same value, so encrypted credentials (Stripe keys, Firebase service accounts, etc.) keep decrypting cleanly.
AUTH_SECRET from the first-boot logs into Railway → Variables. That way a volume reset doesn't lose it.Custom domain
Service → Settings → Domains → + Custom Domain. Add a CNAME at your registrar pointing at the provided target. Railway handles HTTPS via Let's Encrypt automatically.
Once it resolves, set APP_URL=https://your-domain.com in Variables so tracking links and unsubscribe URLs use the right host.
Replicas
Volume management
- Resize: Settings → Volumes → grow the disk. No data loss.
- Inspect: the volume's mount path is
/app/data. Use Railway's CLI torailway run ls /app/datafor a quick peek. - Backup: the container takes nightly VACUUM backups in
/app/data/backups. See Backups.