Containerizing Apache with Docker

A US-based financial services provider wanted to containerize their Apache instances with Docker. Building Apache from source each month had introduced unexpected libraries, so they had previously implemented UpGuard to monitor for package changes. Docker offered a way to insulate an app's resources from the OS and further reduce drift.

Using UpGuard had given them the information to clean up existing configuration drift. Working from a clean, drift-free environment they were in a position to move ahead with more ambitious measures. Docker addressed another point in the pipeline that could reduce the number of downstream conflicts.

As an existing UpGuard user, the company had already defined policies that tested critical configuration items. In UpGuard, policies can be executed as tests or exported as resource files for a number of tools — including Docker. The mapping between Docker containers and UpGuard policies made the process incredibly easy: the configuration items that needed frequent testing were the same ones that differentiate a container from the shared OS.