Skip to main content
Kill -9 Club
Sign in

Hosting a web application

Putting a site and an application into production: the domain name, the web server, the database, and deployments you can undo.

8 courses · about 1290 minutes

This path assumes you can already keep a server running — it follows on from the administration path. It covers what happens once an application has to be reachable from outside: name resolution, Nginx in front of the application, the database, reversible deployments, and Docker where it actually earns its place.

What you will be able to do

  • Publish a domain’s DNS records and verify them before waiting
  • Serve a static site and put a Node application behind Nginx
  • Deploy a new version without downtime, and roll it back
  • Administer PostgreSQL: access, connections, and what makes it grow
  • Decide when a container helps, and when it is a layer for nothing

The path

  1. What actually travels between two machines, and how each one decides whether the destination is a neighbour or somebody else's problem.

    6 lessons · about 126 minutes

  2. An address names a machine, a port names a program — and a connection is nothing more than two kernels agreeing.

    5 lessons · about 104 minutes

  3. Understand how a name resolves, publish the right records, and diagnose with dig instead of waiting.

    6 lessons · about 138 minutes

  4. Serve a React/Vite build, put a Node.js or Next.js application behind a reverse proxy, and move to HTTPS.

    10 lessons · about 222 minutes

  5. Get the code onto the server, switch in a single operation, and be able to go back — including when the verification fails.

    6 lessons · about 138 minutes

  6. Who may connect, how many at once, what the database is doing right now, and why it takes more space than the data inside it.

    10 lessons · about 232 minutes

  7. What a container actually is, when to do without one, and how to put a Node application and its database behind a reverse proxy without exposing the machine.

    9 lessons · about 190 minutes

  8. Install the ISPConfig panel on Ubuntu Server, understand what it automates, and host a site and then a Node.js application on it.

    5 lessons · about 140 minutes