Skip to main content
Docker logo
Infrastructure

Docker

Packaging applications so they run the same everywhere.

What it is

Docker is a containerisation platform. A container packages an application along with everything it needs to run - the runtime, libraries, configuration, dependencies - into a single portable unit. That container will run the same way on a developer's laptop, a staging server, a production cloud instance, or any other environment. "It works on my machine" stops being a problem.

Containers are lighter than virtual machines because they share the host operating system's kernel rather than each running their own. You can run many containers on one server and they'll be isolated from each other without the overhead of full virtualisation.

How I use it

Docker is used on projects with backend services, databases, or multiple components that need to run together in development. A `docker-compose.yml` file can define a web server, a PostgreSQL database, and a Redis cache - run one command and all three start up in the right configuration, isolated from anything else on the machine.

For production deployments on AWS or similar, containers make consistent deployment straightforward: the same image tested in development goes into production without environment-specific configuration drift.

Why this over the alternatives

For simple web projects deployed on Vercel, Docker isn't necessary - the hosting platform handles the environment. Docker earns its place on projects with multiple services, complex backend requirements, or where exact environment reproducibility matters. It's overkill for a marketing site; it's the right choice for a full application.

What it means for your site

  • Consistent environments from development to production - eliminates environment-specific bugs
  • Local development databases and services without polluting the host machine
  • Containers can be reproduced exactly - rollbacks mean running a previous image
  • Scales horizontally by running multiple container instances behind a load balancer

Also in Infrastructure

Want this on your project?

Get in touch and we can talk through what stack makes sense for what you are building.

Start a conversation