A Jenkins cloud plugin that dynamically provisions Docker containers as ephemeral build agents.
The Docker plugin for Jenkins is a Jenkins Cloud plugin that enables dynamic provisioning of Docker containers as Jenkins build agents. It automatically creates containers for individual builds, runs them, and cleans them up, providing scalable, isolated, and reproducible build environments without requiring Docker-specific configuration in the build jobs themselves.
Jenkins administrators and DevOps engineers who manage CI/CD infrastructure and need to provision isolated, ephemeral build agents using Docker containers.
Developers choose this plugin because it abstracts Docker complexity from Jenkins users, allowing builds to run in disposable containers without Docker expertise, while giving administrators fine-grained control over agent provisioning through template-based configuration and multiple launch methods.
Jenkins cloud plugin that uses Docker
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Automatically spins up Docker containers as Jenkins agents for each build, enabling scalable, on-demand resource allocation without manual configuration in jobs, as described in the dynamic agent provisioning feature.
Containers are created for a single build and removed afterward, ensuring clean, isolated environments that prevent contamination and enhance reproducibility, highlighted in the ephemeral containers approach.
Supports SSH, JNLP, and attach connections, allowing integration with various Docker images and network setups, with detailed prerequisites for each method in the README.
Integrates with Jenkins Configuration as Code plugin for YAML-based cloud definitions, enabling infrastructure-as-code practices with example configurations provided.
The plugin does not support Docker Engine Swarm mode API, as admitted in the README, limiting its use in clustered Docker environments that rely on native orchestration.
Requires configuring Docker hosts, opening TCP ports for remote connections if Jenkins is on a different OS, and setting up agent templates, which can be error-prone and time-consuming.
Multiple Docker-related plugins exist in Jenkins (e.g., docker-workflow), leading to user confusion and misreported bugs, as warned in the README's note section.