Person using a laptop
BLOG

Docker for Content Management Systems

The first installment of Aaron's blog series examines the power of Docker for CMS Development. Experience portability, scalability, and easy deployment like never before!
August 1, 2023
analog clock icon
Reading time:
5
min
OUR EXPERTISE
|
CMS & Custom Development
Photo of Aaron Kronberger
Aaron Kronberger
Senior Web Developer, Consultant

This new blog series will explore Docker containers for Content Management Systems (CMS) from the perspective of a developer. I will discuss the benefits of Docker and step through how to set up Docker initially. From there, I will examine how to incorporate Docker into your workflow and show the benefits of using it.

First, what is Docker? Docker is an "open platform for developing, shipping, and running applications" (Source: https://docs.docker.com/get-started/overview/), and what does this mean exactly? It means that one can work on developing an application, "package" it up, and deploy it quickly and easily wherever it is needed. This can be any sort of application, from a simple C#/.NET based website to an enormously complex application like Microsoft's SQL Server.

Popular examples of Docker containers are:

  • Nginx, httpd and Caddy for web servers
  • MongoDB, MySQL and MariaDB for data storage
  • Drupal, WordPress (among others) for CMS
  • Memcached and Redis for caching objects in memory
  • And the list goes on.

Check out the official images at the Docker Hub. https://hub.docker.com/search?image_filter=official&type=image&q=

Why use this system of “containerizing” applications though? Docker solves a great number of problems that developers, IT professionals, and businesses face in their daily lives.

Using Docker images has numerous benefits, including:

  1. They are portable and self-contained.
  2. They separate the application from storage and backend data.
  3. They include all dependencies (generally).
  4. They can be deployed on premises or in the cloud.
  5. They are sharable, scalable, replicable, and easily manageable and updatable.
  6. They use less resources than a Virtual Machine.
  7. They share the host Operating System Kernel with other containers (less redundant resources used).
  8. They can easily communicate with other Docker containers.

Since Docker containers are portable and self-contained, one can share and deploy containers on a variety of host machines and expect consistent results and functionality. Docker containers generally run on a Linux subsystem, and that will be assumed to be available in some capacity for the purposes of this blog series. Windows offers a couple ways to obtain this virtual functionality as of the time of writing, including WSL (Windows Subsystem for Linux) (Source: https://learn.microsoft.com/en-us/windows/wsl/install), and Hyper-V for installing a Linux virtual machine-like Ubuntu.

Before we get Docker set up, let's make note of some important Docker terminology:

  • Container Image: A complete package with everything needed to create a container.
  • Container: An instance of the container image.
  • Dockerfile: A batch script with steps to build the Docker Container Image.
  • Build: Running the dockerfile to build the container image.
  • Volume / Bind-mount: Ways of writing and storing data persistently.

Next time, we will look at how to set up Docker on your local machine or server, and then implement some simple containers.

Latest Blogs

Resend logo displayed in white text on a black background.
OUR EXPERTISE
|
CMS & Custom Development

Migrating From SendGrid to Resend: A Developer's Guide

A practical overview of how to switch from SendGrid to Resend, including domain verification, API configuration, and code refactoring.
December 2, 2025
analog clock icon
Reading time:
8
min
Photo of Aaron Kronberger
Aaron Kronberger
Senior Web Developer, Consultant
Image of code on a computer screen in a dark room.
OUR EXPERTISE
|
CMS & Custom Development

Using AJAX and MVC for Filtering and Paging a Directory

Learn how to build a dynamic resource directory with AJAX and MVC, featuring filtering and paging for a seamless user experience.
June 5, 2025
analog clock icon
Reading time:
8
min
Photo of Chad Heinle
Chad Heinle
VP of Consulting, Solutions Architect
Colorful graphic of several people on digital devices gathered around a globe
NEWS & EVENTS
|
Inclusive Design

Why Accessibility Isn’t Optional: Celebrating GAAD at High Monkey

Recognizing Global Accessibility Awareness Day with resources, insights, and episodes from our podcast that promote inclusive digital experiences.
May 15, 2025
analog clock icon
Reading time:
3
min
High Monkey Icon
High Monkey
The original source

Your success story starts here

Contact us for a free consultation, and let’s work together to build a strategic plan that tackles your challenges and lifts your organization to a new level.