Docker plugin

2 minute readExtensibilityDeveloper productivity

Docker is an open platform for developing, shipping, and running applications. Docker is designed to deliver your applications faster, allowing you to separate your applications from your infrastructure and treat your infrastructure like a managed application. Docker helps you to:

  • Ship code faster.

  • Test faster.

  • Deploy faster.

  • Shorten the cycle between writing code and deploying it.

With Docker, you can package an application with all of its dependencies in a standardized unit for software development. Containers wrap your application in a complete file system that has everything it needs to run (for example, code, runtime, system tools, libraries, and other components installed on a server). The result is an application that behaves the same, regardless of the environment on which it is running. For more information about Docker, refer to the Docker site.

This plugin also supports Docker engines in Swarm mode. The cluster management and orchestration features embedded in the Docker engine are built using SwarmKit. Docker Swarm is a cluster of Docker engines, or nodes, where you deploy services. When you create a service, you specify the container image to use and the commands to execute inside running containers. For more information about Docker Swarm, refer to Swarm mode key concepts.

Integrating CloudBees CD/RO with Docker

The Docker plugin deploys CloudBees CD/RO service as a single container or as a Docker Swarm service if the Docker endpoint is a standalone Docker engine or Docker Swarm cluster manager. It checks the type of Docker endpoint at runtime and deploys a container or Docker Swarm service accordingly.

The Transport Layer Security (TLS) mutual authentication and encryption is supported between the Docker endpoint and the CloudBees CD/RO agent.

Prerequisites

This plugin uses an updated version of Perl, cb-perl shell (Perl v5.32), and requires CloudBees CD/RO agents version 10.3+ to work.