Skip to main content

Goals for this course: What is production-ready?

In this lesson I'll cover some of the goals for this course, and define what a production-ready system is in the context of WordPress.

Self-hosting WordPress is a bit of a challenge. To do it successfully you'll need knowledge of the building blocks, as well as the experience and confidence to use them. Building that confidence takes some time and practice, which is why this is a hands-on course where you'll be building and experimenting alongside, using your own server and environment.

You can't expect to know every single configuration setting in Nginx, or what all the command-line arguments are for mysqldump. However, you will learn how to quickly find these when needed, and have a solid understanding of how they work.

Troubleshooting is extremely important when working with these systems. Turning things off and on again fixes some problems, but it's important to understand what's going on, where to look, and what those log messages really mean when things aren't working as expected.

To summarize, the three most important learning goals for this course are:

  • Build confidence with tools and systems
  • Get comfortable with docs, inline help, and man pages
  • Troubleshoot beyond reboot

The practical outcome is a production-ready environment for your WordPress application.

What is production-ready

You'll want your WordPress site to serve traffic, obviously, and we'll get there very soon. However, there are a few additional things that you'll need before you can call the environment truly ready for production.

  • Full application, data, and system backups, off-site
  • Good security posture, tools, and processes to work with bad actors in real-time
  • Performance-aware configuration for systems and services
  • Reliable monitoring for automatic healing, and human alerts where needed
  • Tools and processes for ongoing and emergency maintenance
  • A full disaster recovery and business continuity plan, with dry runs

We're going to build this system step-by-step in the following lessons. At the end of this module you will also find a launch-day checklist with a comprehensive list of things to look out for when going live.

Not every site will need all of this, of course. Some will be okay with monthly on-site data backups, or no backups at all. Some will be fine not to deliver email, or will use some weird WordPress plugin to do so. Some sites might be okay never serving a cached request because of a cookie.

However, understanding and accepting these trade-offs must be a conscious and intentional decision. This is true for managed hosting, but especially true for self-hosting, because more control == more responsibility.

Enroll
Enjoying the course content? Enroll today to keep track of your progress, access premium lessons and more.