---
layout: section
title: Docker
---
ifdef::backend-html5[]
:description:
:author:
:sectanchors:
:toc:
:toclevels: 4
:hide-uri-scheme:
ifdef::env-github[:imagesdir: ../resources]
ifndef::env-github[:imagesdir: ../../resources]
endif::[]

////
IMPORTANT: If you update content in this section, please ensure you check these
changes against the procedures documented in the
'tutorials/_prerequisites.adoc' file, which is used in the Guided Tour of the
Jenkins Documentation.
////

link:https://docs.docker.com/get-started/overview/[Docker] is a platform for running applications in an isolated environment called a "container" (or Docker container).
Applications like Jenkins can be downloaded as read-only "images" (or Docker images), each of which can be run in Docker as a container.
A Docker container is a "running instance" of a Docker image.
A Docker image is stored permanently and updated only when new versions are published, whereas containers are temporary by nature.
Learn more about these concepts in link:https://docs.docker.com/get-started/[Getting Started, Part 1: Orientation and setup] in the Docker documentation.

Due to Docker's fundamental platform and container design, a Docker image for a given application, such as Jenkins, can be run on any supported operating system or cloud service also running Docker.
Supported operating systems include macOS, Linux, and Windows, and supported cloud services include AWS and Azure.

=== Installing Docker

To install Docker on your operating system, follow the instructions in the link:/doc/pipeline/tour/getting-started/#prerequisites[Guided Tour prerequisites].

Alternatively, visit link:https://hub.docker.com/search?type=edition&offering=community[Docker Hub], and select the *Docker Community Edition* suitable for your operating system or cloud service.
Follow the installation instructions provided on their website.

[CAUTION]
====
If you are installing Docker on a Linux-based operating system, ensure that Docker is configured so it can be managed as a non-root user.
Read more about this in Docker's link:https://docs.docker.com/engine/installation/linux/linux-postinstall/[Post-installation steps for Linux] page of their documentation.
This page also includes instructions for configuring Docker to start automatically on boot.
====

include::doc/book/installing/_installation_requirements.adoc[]

=== Downloading and running Jenkins in Docker

Several Docker images of Jenkins are available.

Use the recommended official link:https://hub.docker.com/r/jenkins/jenkins/[`jenkins/jenkins` image] from the link:https://hub.docker.com/[Docker Hub repository].
This image contains the current link:/download[Long-Term Support (LTS) release of Jenkins], which is production-ready.
However, this image doesn't contain Docker CLI, and is not bundled with the frequently used Blue Ocean plugins and its features.
To use the full power of Jenkins and Docker, you may want to go through the installation process described below.

[NOTE]
====
A new `jenkins/jenkins` image is published each time a new Jenkins Docker release becomes available. 
You can see a list of previously published versions of the `jenkins/jenkins` image on the link:https://hub.docker.com/r/jenkins/jenkins/tags/[tags] page.
====

include::doc/book/installing/_docker.adoc[]

include::doc/book/installing/_custom-ca-certificates.adoc[]

include::doc/book/installing/_setup-wizard.adoc[]
