Deployment and Migration Guides

Moving an app onto a server you control is mostly a sequence of small, checkable steps. These guides walk through deployment methods, migrations from other platforms, preview environments and release strategies.

26 posts · Framework deploy guides →

12 min read
By David Viejo

Deploy Next.js without Vercel: Temps, Railway, Docker on a VPS or Cloudflare Workers, with deploy commands, 2026 pricing and honest trade-offs for each.

16 min read
By David Viejo

Move a Next.js app off Vercel step by step: export environment variables, swap @vercel/ imports, update DNS. Two paths, 15 minutes or a couple of hours.

11 min read
By David Viejo

Move from Coolify to Temps by hand: redeploy the same Docker Compose project, copy the database, cut DNS over without downtime and verify with a checklist.

12 min read
By David Viejo

Deploy Next.js to a VPS step by step: Node.js 24, PM2, Nginx, Let's Encrypt and GitHub Actions, plus the monitoring most guides skip and a self-hosted option.

12 min read
By David Viejo

Set up preview environments for every pull request: a DIY webhook, Docker and Traefik pipeline, or one toggle in Temps. Compared with Coolify and Vercel.

18 min read
By David Viejo

A 15-step VPS security checklist for Ubuntu 24.04 and Debian 12: SSH keys, a firewall Docker can't bypass, auto-updates, fail2ban, TLS, tested backups.

9 min read
By David Viejo

Best platforms for per-PR preview deployments in 2026: Temps, Vercel, Netlify, Railway, Render and Coolify compared on access control, idle cost and cleanup.

9 min read
By David Viejo

Run migrations once per release, not in the start command: expand/contract, which tools take a lock, and how to run them as a one-off step on a Temps server.

14 min read
By David Viejo

Ten deployment platforms ranked for solo developers on price, deploy speed, free tier and lock-in. Temps bundles deploys and observability free to self-host.

14 min read
By David Viejo

Seven self-hosted deployment platforms compared: Temps, Coolify, Dokploy, CapRover, Kamal, Dokku and Portainer. Only Temps bundles analytics and replay.

15 min read
By David Viejo

Vercel Pro charges $20 per deploying seat plus usage. 2026 pricing for Temps, Railway, Render, Netlify, Cloudflare and more, compared feature by feature.

10 min read
By David Viejo

Migrate TimescaleDB between Docker containers safely: the pg_dump pre/post-restore path, the timescaledb-ha volume-path trap, and verifying hypertables.

10 min read
By David Viejo

What actually happens between git push and your app being live: webhook delivery, build queues, health checks and the traffic swap, explained step by step.

8 min read
By David Viejo

Why we chose Rust for a deployment platform: one self-contained binary, no GC pauses in the Pingora proxy, and four build targets from one source tree.

18 min read
By David Viejo

Blue-green, rolling and canary deploys compared, with a Docker Compose and Nginx walkthrough, database migration patterns and a load test proving no drops.

12 min read
By David Viejo

Traditional cron fails silently in Docker — no logs, no env vars, zombie processes. The HTTP endpoint pattern with auth, monitoring and secret injection.

10 min read
By David Viejo

Concurrent pushes cause deployment races that corrupt builds. Superseding, priority queues, and concurrency locks with CI/CD examples that actually prevent it.

12 min read
By David Viejo

Scan Docker images for CVEs with Trivy after every deploy and daily: severity triage, a SHA-pinned GitHub Actions setup, and alerts for critical findings.

12 min read
By David Viejo

Most platforms have no audit log until compliance demands one. Event schemas, immutable storage, retention policies and the query patterns SOC 2 needs.

11 min read
By David Viejo

Unsigned webhooks are an open door for attackers. Event types, HMAC signature verification, idempotency and Slack or Discord integration done securely.

14 min read
By David Viejo

Deploy a Turborepo or pnpm/npm workspaces monorepo with Temps: one project per app directory, shared managed Postgres, branch previews and per-app monitoring.

8 min read
By David Viejo

Define AI agents in .temps/agents/*.yaml that run on new errors, deploys, cron or webhooks and open pull requests via Claude Code, Codex or OpenCode.