---
title: "2026 Infra Guide for AI Tool Builders - Part 2: Deployment & Hosting"
slug: 2026-infra-guide-part-2-deployment-hosting
date_published: 2026-01-15T10:00:00.000Z
original_url: https://www.tigzig.com/post/2026-infra-guide-part-2-deployment-hosting
source: original
processed_at: 2026-01-15T10:00:00.000Z
---

# 2026 Infra Guide for AI Tool Builders - Part 2: Deployment & Hosting

![Deployment & Hosting](/images/infra-part2-collage.png)

You've built a React app or an HTML page on your local machine. Maybe it connects to a Python backend, also running on localhost. Now you want to publish it to the internet with your custom domain - something like yourdomain.com. What do you do?

This is what this post covers. The answer: you need four elements - frontend hosting, backend hosting (if you have one), a domain, and DNS. Get these right and your local app becomes a live public site with your own custom domain.

Below, I walk through each element, the options available, what I use for tigzig.com's 30+ tools and for client projects where I have a choice.

In [Part 1](https://www.tigzig.com/post/2026-infra-guide-part-1-ai-coder), I covered AI coders and how Claude Code handles everything from code to deployments. This part covers where those builds actually run.

## The Four Elements of Deployment

1. **Frontend Hosting** - Where your HTML/React/static files live and get served to users
2. **Backend Hosting** - Where your API/server code runs (if you have backend logic)
3. **Domain** - Your custom address like tigzig.com (purchased from registrar like Namecheap or GoDaddy)
4. **DNS** - The routing system that connects your domain to your hosting (your Registrar provides basic DNS, but I use Cloudflare for more control)

Once you have these four set up correctly, your app is live on the internet with your own domain.

## Frontend Hosting

Your frontend is HTML/CSS/JS files, React builds, static sites - the stuff users see in their browser.

**Options:** Vercel, Netlify, GitHub Pages, Cloudflare Pages - all solid choices.

**I use Vercel.** 40+ UIs running on free tier. Fast, reliable, zero-config deployments. Connect your GitHub repo and it deploys. Or use Claude Code to set up projects and deploy them directly.

**Why Vercel:** Generous free tier with good bandwidth and build minutes. Plus serverless functions up to 5 minutes execution time - huge when you need backend logic without spinning up a full server.

Cloudflare Pages is another option with good free tier, but their edge functions have CPU time limits (10-50ms CPU time, not wall time) - fine for I/O-bound work like API calls, not suitable for compute-heavy operations like Vercel's 5-minute serverless functions.

**For starters:** Vercel's free tier covers most small projects entirely. GitHub Pages works great for static sites.

## Backend Hosting

If your app needs a server - API endpoints, database operations, file processing - you need backend hosting.

### My Journey: Render to Railway to Hetzner

**Started with Render.** Easiest entry point. One-click deploy, generous free tier (750 hours/month). Perfect for learning.

The catch: free tier spins down after 15 minutes of inactivity, takes up to a minute to spin back up. For live apps, you need paid tier - around $7/month per deployment for persistent disk.

With 30 backends, that would be $210/month !

**Railway:** Better pricing model. Approx $5/month base subscription includes $5 in usage credits (Hobby plan). Usage-based pricing on actual CPU and memory utilization - if your service sits idle, you pay minimal. With Railway, you can run multiple backends under one plan.

But I knew I'd have a lot of backends. Not just 3-4. At one point, many of them. And I need data hosting too - currently around 15GB of data that needs to be there.

That's when I decided to set up my own VPS with deployment management.

### Hetzner + Coolify: Current Setup

The whole backbone of tigzig.com runs on Hetzner VPS with Coolify.

Chose Hetzner for clean UI, solid performance, straightforward pricing, simple setup.

**Server specs (CAX21, ARM-based):**
- 4 vCPUs
- 8GB RAM
- 80GB disk
- 7.69 EUR/month (with backup option)

**Currently hosting:**
- 30+ FastAPI backends
- Flowise 
- n8n
- Coolify

Still approx 50% capacity remaining on CPU/RAM side though disk is getting full. Planning to add a 50GB disk, that will cost me just approx 2 EUR/month extra. Not bad right?

### Why I Skipped AWS and Azure

Too expensive, too complicated. These are aircraft carriers. My requirements fit a Toyota.

I work with small businesses. Don't need "Enterprise Level" or "At Scale" yet. When that changes, I'll move. Until then, simpler providers work fine.

I keep small AWS/Azure instances for client testing and compatibility checks. But production runs on Hetzner.

### Coolify

Coolify = self-hosted Render/Railway. Point to GitHub repo, Coolify deploys each backend in its own Docker container. Each backend gets isolated container, auto-restarts on crash, logs accessible via UI. 

Once the initial setup is done, it is as simple to use as Render. Earlier I used to manually setup new projects, now just have Claude Code do it (need to share your API tokens and let it access it via Coolify's API's)

**Flexible** : Option of deploying via GitHub Repo, Docker Images, Docker Compose and Dockerfile

### Technical Details That Matter

**Flowise Deployment:** Deployed via custom Docker image built for ARM64 architecture (official Flowise image is AMD64). Manually triggered via GitHub Actions. Claude Code helped set this up.

**n8n Deployment:** Deployed via Docker Compose. UI worked fine through reverse proxy, but webhooks weren't reachable from outside. The fix required compose file changes:
- **Custom DNS:** Added dns: 1.1.1.1, 8.8.8.8 to force container to use external DNS
- **Privileged mode:** Set privileged: true for proper routing behind proxy
- **Environment variables:** Configured WEBHOOK_URL and N8N_EDITOR_BASE_URL

Without these, n8n runs but can't communicate with outside world - common gotcha for self-hosting behind reverse proxies.

## Domain & DNS

**Domain:** Your custom address like tigzig.com. Purchase from registrar - Namecheap, GoDaddy, others. Costs around $10-12/year. That's it - you own yourname.com for $10/year.

**DNS:** The routing system that connects your domain to your hosting. Think of it as the phone book of the internet - when someone types yourdomain.com, DNS tells their browser where to find your site.

Though you can keep your DNS with your registrar, I use Cloudflare for DNS management. Here's why:

First of it is not just DNS management, all requests are proxied through it and it applies the first level of security checks. That's huge.

In addition: set routing rules, configure caching, manage SSL, free Cloudflare workers - all in one place. I'm using a fraction of what Cloudflare can do, but what I use works well.

**Migration is easy:** Migrated 100+ DNS records to Cloudflare. Import/export DNS record files, moved everything in one shot.

### Cloudflare Free Tier Notes

**100-second timeout limit:** Free tier has 100-second timeout for proxied requests. Problem: Some of my backends run 5-10 minutes (heavy data processing, large file uploads). Solution: Remove those endpoints from Cloudflare proxy, point directly to server. Manage security at FastAPI level (CORS, rate limits, API keys). Most backends are proxied. Long-running ones are direct.

**SSL for one subdomain level only:** Cloudflare free tier handles SSL for app.tigzig.com and api.tigzig.com but NOT for hosting.app.tigzig.com (multi-level subdomains require paid tier). Plan accordingly.

**Caching for static content and large files:** Set up custom cache rules for blog posts and large datasets (1 month TTL). After deploying new blog posts, I run cache purge + warm script.

### Linking Domain to Hosting

Once you have domain and DNS set up, linking to your hosting is straightforward.

**For frontend (Vercel):** Go to project settings, add custom domain. Vercel gives you DNS records (usually CNAME). Add those records in Cloudflare DNS dashboard. Done.

**For backend:** Point your domain or subdomain to your Hetzner IP address. In Cloudflare, create an A record pointing to your server IP. If using Coolify, add the domain in Coolify settings and it handles SSL automatically.

If you get stuck, ask your AI coder or Claude Code. These are standard operations, any AI coder can guide you through the steps.

## Cost

**My current monthly costs:**
- Hetzner VPS: 7.69 EUR
- Vercel: $0 (free tier, 40+ UIs)
- Cloudflare: $0 (free tier)
- Domains: Approx $10-12/year per domain

**Total infrastructure: Approx $7-8/month for 30+ backends and 40+ frontends.**

Trade-off: I manage my own servers - security, monitoring, backups on me. My clients are small businesses. Need to build the model, setup automation, deploy tool. But this cost structure makes projects viable that wouldn't be otherwise.

## How Claude Code Helps

From Part 1 - Claude Code handles the deployment workflow:
- Creates projects on Vercel & Coolify
- Sets environment variables, mounts volumes
- Debugs build failures
- SSHs into servers, inspects container logs
- Manages DNS on Cloudflare

I had done Hetzner + Coolify setup manually when I first started. The YouTube guide below + ChatGPT walked me through it step-by-step. Now with Claude Code, I'd just hand it the requirements and it would configure everything.

**Setup Resource:** This guide from RJ Reynolds covers Hetzner + Coolify security hardening, server setup, installation, deployment workflows: [Hetzner + Coolify Setup Guide](https://www.youtube.com/watch?v=taJlPG82Ucw)

## Recommendations

**Starting out:** Render free tier or Railway Hobby ($5/month) for backend. Vercel free tier for frontend. Learn the basics.

**Scaling up:** When you have multiple backends and steady traffic, move to Hetzner + Coolify. More control, much lower costs. Frontend stays on Vercel.

The infrastructure is cheap. My biggest investment is Claude Code Max.

## What This Enables

Runs whole of tigzig.com plus handful of client apps. For some clients, replicated dedicated setup with similar config.

With infrastructure at $7-8/month, I can:
- Build tools for small businesses that can't afford enterprise pricing
- Run 30+ open-source tools at tigzig.com
- Test new ideas without worrying about runaway costs
- Keep projects viable that wouldn't be otherwise

And with Claude Code Max I am running multiple projects without worrying about message limits with CC not only building the projects but managing the whole chain from deployment and security to monitoring. The multiplier effect is huge.

## Next in This Series

Future parts will cover security - Fail2ban setup, API key management, monitoring, rate limiting, handling bot attacks, build vs. buy, internal tools, emails.
## Resources

- [tigzig.com](https://www.tigzig.com) - 30+ tools running on this setup
- [Part 1: AI Coder](https://www.tigzig.com/post/2026-infra-guide-part-1-ai-coder) - How Claude Code manages the full deployment chain
- [Hetzner + Coolify Setup Guide](https://www.youtube.com/watch?v=taJlPG82Ucw)
