Book Image

Extending Docker

By : Russ McKendrick
Book Image

Extending Docker

By: Russ McKendrick

Overview of this book

With Docker, it is possible to get a lot of apps running on the same old servers, making it very easy to package and ship programs. The ability to extend Docker using plugins and load third-party plugins is incredible, and organizations can massively benefit from it. In this book, you will read about what first and third party tools are available to extend the functionality of your existing Docker installation and how to approach your next Docker infrastructure deployment. We will show you how to work with Docker plugins, install it, and cover its lifecycle. We also cover network and volume plugins, and you will find out how to build your own plugin. You’ll discover how to integrate it with Puppet, Ansible, Jenkins, Flocker, Rancher, Packer, and more with third-party plugins. Then, you’ll see how to use Schedulers such as Kubernetes and Amazon ECS. Finally, we’ll delve into security, troubleshooting, and best practices when extending Docker. By the end of this book, you will learn how to extend Docker and customize it based on your business requirements with the help of various tools and plugins.
Table of Contents (15 chapters)

Serving up Docker with Jenkins

Jenkins is quite a big topic to cover in a small section of a single chapter, so the walkthrough is going to be really basic and will only deal with building and launching containers.

The other thing to note is that I am going to be covering Jenkins 2.0; at the time of writing this, the first beta has just been released, which means that while things may change slightly as themes and such are refined, all of the features and basic functionality are locked in.

The reason for covering Jenkins 2.0 rather than the Jenkins 1.x branch is that as far as Jenkins is concerned, Docker is now a first-class citizen, meaning that it fully supports and embraces the Docker way of working. A full overview of the current status of Jenkins 2.0 can be found at

So what is Jenkins? Jenkins is an open source continuous integration tool written in Java, and it has a lot of uses.

Personally, I am really late to the Jenkins party; being from an operations background...