Chapter 2. Extending the D4ST Docker System

It is easy to extend or modify the D4ST system by defining your own containers that build on the base containers.

The Docker technology is layered in a way that makes it easy to build on the work of others with a minimum of duplication of code or runtime artifacts. The D4ST containers have been setup to make extending them as easy as possible.

The D4ST containers are organized using the docker-compose facility. See the Docker documentation for details on how to use docker-compose. This section provides instructions on how to build the out-of-the-box D4ST containers using docker-compose and provides guidance on how to set up and use your own containers.

These instructions assume that you have a copy of the d4st-docker project from GitHub ( in some convenient location, such as c:\workspace\d4st-docker or similar. In these instructions "d4st-docker" is used as the root directory for the project. Any relative paths in instructions are relative to the root of the project unless stated otherwise.

The instructions use Linux/OS X file path conventions for simplicity but all the instructions should work as-is under Windows (or you can just spin up a Docker image with your favorite Unix distribution and work in there).