Sharing Host Volumes with Docker Containers

For development environments with Docker, a fundamental requirement is the synchronization of host folders with a Docker container. With it, a developer can employ the full power of the host to work on code locally, and instantly see these changes reflected inside the Docker container. While Docker Compose includes a command to trivially define synchronized folders with the volume command, development performance is impaired when the docker daemon is not running on the host itself—such as on OS X.

This post aims at giving an overview on the host volume performance impacts when running Docker on a non-Linux host. This post assumes a basic understanding of the capabilities of Docker and Compose. This preceding post introduces the fundamentals of Docker if you are not familiar with the Docker stack yet.

Continue reading

Saturday, 30. May 2015

An Introduction to Docker (Compose) for Development Environments

Docker has gained significant traction and stability since its beginnings in 2013. My previous experience was that creating complex application containers with multiple services was complicated and full of workarounds. Since then, Docker has taken over the linking tool Fig into Docker Compose, and has gained an interesting set of abstractions towards container orchestration. Still, there are many pitfalls regarding Docker use in both development and production. This post aims at giving an introduction to the possibilities of Docker and its limitations for isolated development environments.

Continue reading

Sunday, 3. May 2015