Skip to main content

Fixing host.docker.internal on Linux

· 2 min read

If you've ever moved a Docker project from a Mac to a Linux server, you've probably hit this error:

Connection refused: host.docker.internal:3000

On macOS and Windows, host.docker.internal is a magic DNS name that resolves to your host machine's IP address. It's incredibly useful for connecting containers to local databases or APIs running outside of Docker.

But on Linux? It doesn't exist by default.

The Reverse Proxy Showdown: Nginx vs HAProxy vs Caddy vs Traefik

· 3 min read

Reverse proxies are the unsung heroes of modern infrastructure. They terminate TLS, route traffic, balance loads, and keep your apps reachable. But which one should you choose? There are four popular options worth comparing head-to-head: Nginx, HAProxy, Caddy, and Traefik. Each comes with its own strengths, trade-offs, and ideal use cases.

How We Built a PaaS with Go, Kubernetes, and React

· 5 min read

Building a PaaS as a solo founder means making choices. Some deliberate, some accidental, all of them tradeoffs.

Every tool comes with pros and cons, and the deciding factor is usually the most expensive resource of all: time.

If I can get the job done with something I already know, I'll take that path. I'll learn new tools when the project pays for it. Until then, it's all about moving forward with what works.

Here's how Hostim.dev is put together today – the stack that runs every app, database, and service behind the scenes.