You can install Docker CE in different ways, depending on your needs:linux
Most users set up Docker’s repositories and install from them, for ease of installation and upgrade tasks. This is the recommended approach.git
Some users download the RPM package and install it manually and manage upgrades completely manually. This is useful in situations such as installing Docker on air-gapped systems with no access to the internet.github
In testing and development environments, some users choose to use automated convenience scripts to install Docker.docker
Before you install Docker CE for the first time on a new host machine, you need to set up the Docker repository. Afterward, you can install and update Docker from the repository.shell
Install required packages. yum-utils
provides the yum-config-manager
utility, and device-mapper-persistent-data
and lvm2
are required by the devicemapper
storage driver.centos
$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
Use the following command to set up the stable repository. You always need the stable repository, even if you want to install builds from the edge or test repositories as well.bash
$ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
Optional: Enable the edge and test repositories. These repositories are included in the docker.repo
file above but are disabled by default. You can enable them alongside the stable repository.app
$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-test
You can disable the edge or test repository by running the yum-config-manager
command with the --disable
flag. To re-enable it, use the --enable
flag. The following command disables the edge repository.curl
$ sudo yum-config-manager --disable docker-ce-edge
Note: Starting with Docker 17.06, stable releases are also pushed to the edge and test repositories.ide
Install the latest version of Docker CE, or go to the next step to install a specific version:
$ sudo yum install docker-ce
If prompted to accept the GPG key, verify that the fingerprint matches 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
, and if so, accept it.
Got multiple Docker repositories?
If you have multiple Docker repositories enabled, installing or updating without specifying a version in the
yum install
oryum update
command always installs the highest possible version, which may not be appropriate for your stability needs.
Docker is installed but not started. The docker
group is created, but no users are added to the group.
To install a specific version of Docker CE, list the available versions in the repo, then select and install:
a. List and sort the versions available in your repo. This example sorts results by version number, highest to lowest, and is truncated:
$ yum list docker-ce --showduplicates | sort -r docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
The list returned depends on which repositories are enabled, and is specific to your version of CentOS (indicated by the .el7
suffix in this example).
b. Install a specific version by its fully qualified package name, which is the package name (docker-ce
) plus the version string (2nd column) up to the first hyphen, separated by a hyphen (-
), for example, docker-ce-18.03.0.ce
.
$ sudo yum install docker-ce-<VERSION STRING>
Docker is installed but not started. The docker
group is created, but no users are added to the group.
Start Docker.
$ sudo systemctl start docker
Verify that docker
is installed correctly by running the hello-world
image.
$ sudo docker run hello-world
This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.
Docker CE is installed and running. You need to use sudo
to run Docker commands. Continue to Linux postinstall to allow non-privileged users to run Docker commands and for other optional configuration steps.
On Linux, you can download the Docker Compose binary from the Compose repository release page on GitHub. Follow the instructions from the link, which involve running the curl
command in your terminal to download the binaries. These step by step instructions are also included below.
Run this command to download the latest version of Docker Compose:
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
Use the latest Compose release number in the download command.
The above command is an example, and it may become out-of-date. To ensure you have the latest version, check the Compose repository release page on GitHub.
If you have problems installing with curl
, see Alternative Install Options tab above.
Apply executable permissions to the binary:
sudo chmod +x /usr/local/bin/docker-compose
Optionally, install command completion for the bash
and zsh
shell.
Test the installation.
$ docker-compose --version docker-compose version 1.21.2, build 1719ceb