mirror of https://github.com/docker/docs.git
342 lines
13 KiB
Markdown
342 lines
13 KiB
Markdown
---
|
|
title: Install CS Docker Engine
|
|
description: Learn how to install the commercially supported version of Docker Engine.
|
|
keywords: docker, engine, install
|
|
redirect_from:
|
|
- /docker-trusted-registry/install/engine-ami-launch/
|
|
- /docker-trusted-registry/install/install-csengine/
|
|
- /docker-trusted-registry/cs-engine/install/
|
|
- /cs-engine/install/
|
|
---
|
|
|
|
Follow these instructions to install CS Docker Engine, the commercially
|
|
supported version of Docker Engine.
|
|
|
|
CS Docker Engine can be installed on the following operating systems:
|
|
|
|
* [CentOS 7.1/7.2 & RHEL 7.0/7.1/7.2/7.3 (YUM-based systems)](#install-on-centos-7172--rhel-70717273-yum-based-systems)
|
|
* [Ubuntu 14.04 LTS or 16.04 LTS](#install-on-ubuntu-1404-lts-or-1604-lts)
|
|
* [SUSE Linux Enterprise 12](#install-on-suse-linux-enterprise-123)
|
|
|
|
You can install CS Docker Engine using a repository or using packages.
|
|
|
|
- If you [use a repository](#install-using-a-repository), your operating system
|
|
will notify you when updates are available and you can upgrade or downgrade
|
|
easily, but you need an internet connection. This approach is recommended.
|
|
|
|
- If you [use packages](#install-using-packages), you can install CS Docker
|
|
Engine on air-gapped systems that have no internet connection. However, you
|
|
are responsible for manually checking for updates and managing upgrades.
|
|
|
|
## Prerequisites
|
|
|
|
To install CS Docker Engine, you need root or sudo privileges and you need
|
|
access to a command line on the system.
|
|
|
|
## Install using a repository
|
|
|
|
### Install on CentOS 7.1/7.2 & RHEL 7.0/7.1/7.2/7.3 (YUM-based systems)
|
|
|
|
This section explains how to install on CentOS 7.1/7.2 & RHEL 7.0/7.1/7.2/7.3. Only
|
|
these versions are supported. CentOS 7.0 is **not** supported. On RHEL,
|
|
depending on your current level of updates, you may need to reboot your server
|
|
to update its RHEL kernel.
|
|
|
|
1. Add the Docker public key for CS Docker Engine packages:
|
|
|
|
```bash
|
|
$ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
|
|
```
|
|
|
|
> **Note**: If the key server above does not respond, you can try one of these:
|
|
>
|
|
> - pgp.mit.edu
|
|
> - keyserver.ubuntu.com
|
|
|
|
2. Install yum-utils if necessary:
|
|
|
|
```bash
|
|
$ sudo yum install -y yum-utils
|
|
```
|
|
|
|
3. Add the Docker repository:
|
|
|
|
```bash
|
|
$ sudo yum-config-manager --add-repo https://packages.docker.com/1.13/yum/repo/main/centos/7
|
|
```
|
|
|
|
This adds the repository of the latest version of CS Docker Engine. You can
|
|
customize the URL to install an older version.
|
|
|
|
4. Install Docker CS Engine:
|
|
|
|
- **Latest version**:
|
|
|
|
```bash
|
|
$ sudo yum makecache fast
|
|
|
|
$ sudo yum install docker-engine
|
|
```
|
|
|
|
- **Specific version**:
|
|
|
|
On production systems, you should install a specific version rather than
|
|
relying on the latest.
|
|
|
|
1. List the available versions:
|
|
|
|
```bash
|
|
$ yum list docker-engine.x86_64 --showduplicates |sort -r
|
|
```
|
|
|
|
The second column represents the version.
|
|
|
|
2. Install a specific version by adding the version after `docker-engine`,
|
|
separated by a hyphen (`-`):
|
|
|
|
```bash
|
|
$ sudo yum install docker-engine-<version>
|
|
```
|
|
|
|
5. Configure `devicemapper`:
|
|
|
|
By default, the `devicemapper` graph driver does not come pre-configured in
|
|
a production-ready state. Follow the documented step by step instructions to
|
|
[configure devicemapper with direct-lvm for production](/engine/userguide/storagedriver/device-mapper-driver/#configure-direct-lvm-mode-for-production)
|
|
to achieve the best performance and reliability for your environment.
|
|
|
|
6. Configure the Docker daemon to start automatically when the system starts,
|
|
and start it now.
|
|
|
|
```bash
|
|
$ sudo systemctl enable docker.service
|
|
$ sudo systemctl start docker.service
|
|
```
|
|
|
|
7. Confirm the Docker daemon is running:
|
|
|
|
```bash
|
|
$ sudo docker info
|
|
```
|
|
|
|
8. Only users with `sudo` access can run `docker` commands.
|
|
Optionally, add non-sudo access to the Docker socket by adding your user
|
|
to the `docker` group.
|
|
|
|
```bash
|
|
$ sudo usermod -a -G docker $USER
|
|
```
|
|
|
|
9. Log out and log back in to have your new permissions take effect.
|
|
|
|
### Install on Ubuntu 14.04 LTS or 16.04 LTS
|
|
|
|
1. Install packages to allow `apt` to use a repository over HTTPS:
|
|
|
|
```bash
|
|
$ sudo apt-get update
|
|
|
|
$ sudo apt-get install --no-install-recommends \
|
|
apt-transport-https \
|
|
curl \
|
|
software-properties-common
|
|
```
|
|
|
|
Optionally, install additional kernel modules to add AUFS support.
|
|
|
|
```bash
|
|
$ sudo apt-get install -y --no-install-recommends \
|
|
linux-image-extra-$(uname -r) \
|
|
linux-image-extra-virtual
|
|
```
|
|
|
|
2. Download and import Docker's public key for CS packages:
|
|
|
|
```bash
|
|
$ curl -fsSL 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add -
|
|
```
|
|
|
|
> **Note**: If the key server above does not respond, you can try one of these:
|
|
>
|
|
> - pgp.mit.edu
|
|
> - keyserver.ubuntu.com
|
|
|
|
3. Add the repository. In the command below, the `lsb_release -cs` sub-command
|
|
returns the name of your Ubuntu version, like `xenial` or `trusty`.
|
|
|
|
```bash
|
|
$ sudo add-apt-repository \
|
|
"deb https://packages.docker.com/1.13/apt/repo/ \
|
|
ubuntu-$(lsb_release -cs) \
|
|
main"
|
|
```
|
|
|
|
4. Install CS Docker Engine:
|
|
|
|
- **Latest version**:
|
|
|
|
```bash
|
|
$ sudo apt-get update
|
|
|
|
$ sudo apt-get -y install docker-engine
|
|
```
|
|
|
|
- **Specific version**:
|
|
|
|
On production systems, you should install a specific version rather than
|
|
relying on the latest.
|
|
|
|
1. List the available versions:
|
|
|
|
```bash
|
|
$ sudo apt-get update
|
|
|
|
$ apt-cache madison docker-engine
|
|
```
|
|
|
|
The second column represents the version.
|
|
|
|
2. Install a specific version by adding the version after `docker-engine`,
|
|
separated by an equals sign (`=`):
|
|
|
|
```bash
|
|
$ sudo apt-get install docker-engine=<version>
|
|
```
|
|
|
|
5. Confirm the Docker daemon is running:
|
|
|
|
```bash
|
|
$ sudo docker info
|
|
```
|
|
|
|
6. Only users with `sudo` access can run `docker` commands.
|
|
Optionally, add non-sudo access to the Docker socket by adding your user
|
|
to the `docker` group.
|
|
|
|
```bash
|
|
$ sudo usermod -a -G docker $USER
|
|
```
|
|
|
|
Log out and log back in to have your new permissions take effect.
|
|
|
|
### Install on SUSE Linux Enterprise 12.3
|
|
|
|
1. Refresh your repository:
|
|
|
|
```bash
|
|
$ sudo zypper update
|
|
```
|
|
|
|
2. Add the Docker repository and public key:
|
|
|
|
```bash
|
|
$ sudo zypper ar -t YUM https://packages.docker.com/1.13/yum/repo/main/opensuse/12.3 docker-1.13
|
|
$ sudo rpm --import 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e'
|
|
```
|
|
|
|
This adds the repository of the latest version of CS Docker Engine. You can
|
|
customize the URL to install an older version.
|
|
|
|
> **Note**: If the key server above does not respond, you can try one of these:
|
|
>
|
|
> - pgp.mit.edu
|
|
> - keyserver.ubuntu.com
|
|
|
|
3. Install CS Docker Engine.
|
|
|
|
- **Latest version**:
|
|
|
|
```bash
|
|
$ sudo zypper refresh
|
|
|
|
$ sudo zypper install docker-engine
|
|
```
|
|
|
|
- **Specific version**:
|
|
|
|
On production systems, you should install a specific version rather than
|
|
relying on the latest.
|
|
|
|
1. List the available versions:
|
|
|
|
```bash
|
|
$ sudo zypper refresh
|
|
|
|
$ zypper search -s --match-exact -t package docker-engine
|
|
```
|
|
|
|
The third column is the version string.
|
|
|
|
2. Install a specific version by adding the version after `docker-engine`,
|
|
separated by a hyphen (`-`):
|
|
|
|
```bash
|
|
$ sudo zypper install docker-engine-<version>
|
|
```
|
|
|
|
4. Configure the Docker daemon to start automatically when the system starts,
|
|
and start it now.
|
|
|
|
```bash
|
|
$ sudo systemctl enable docker.service
|
|
$ sudo systemctl start docker.service
|
|
```
|
|
|
|
5. Confirm the Docker daemon is running:
|
|
|
|
```bash
|
|
$ sudo docker info
|
|
```
|
|
|
|
6. Only users with `sudo` access can run `docker` commands.
|
|
Optionally, add non-sudo access to the Docker socket by adding your user
|
|
to the `docker` group.
|
|
|
|
```bash
|
|
$ sudo usermod -a -G docker $USER
|
|
```
|
|
|
|
Log out and log back in to have your new permissions take effect.
|
|
|
|
7. [Configure Btrfs for graph storage](/engine/userguide/storagedriver/btrfs-driver.md).
|
|
This is the only graph storage driver supported on SLES.
|
|
|
|
## Install using packages
|
|
|
|
If you need to install Docker on an air-gapped system with no access to the
|
|
internet, use the [package download link table](#package-download-links) to
|
|
download the Docker package for your operating system, then install it using the
|
|
[appropriate command](#general-commands). You are responsible for manually
|
|
upgrading Docker when a new version is available, and also for satisfying
|
|
Docker's dependencies.
|
|
|
|
### General commands
|
|
|
|
To install Docker from packages, use the following commands:
|
|
|
|
| Operating system | Command |
|
|
|-----------------------|---------|
|
|
| RHEL / CentOS / SLES | `$ sudo yum install /path/to/package.rpm` |
|
|
| Ubuntu | `$ sudo dpkg -i /path/to/package.deb` |
|
|
|
|
### Package download links
|
|
|
|
{% assign rpm-prefix = "https://packages.docker.com/1.13/yum/repo/main" %}
|
|
{% assign deb-prefix = "https://packages.docker.com/1.13/apt/repo/pool/main/d/docker-engine" %}
|
|
|
|
#### CS Docker Engine 1.13.1
|
|
|
|
{% comment %} Check on the S3 bucket for packages.docker.com for the versions. {% endcomment %}
|
|
{% assign rpm-version = "1.13.1.cs8-1" %}
|
|
{% assign rpm-rhel-version = "1.13.1.cs8-1" %}
|
|
{% assign deb-version = "1.13.1~cs8-0" %}
|
|
|
|
| Operating system | Package links |
|
|
|-----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
| RHEL 7.x and CentOS 7 | [docker-engine]({{ rpm-prefix }}/centos/7/Packages/docker-engine-{{ rpm-version}}.el7.centos.x86_64.rpm), [docker-engine-debuginfo]({{ rpm-prefix }}/centos/7/Packages/docker-engine-debuginfo-{{ rpm-version }}.el7.centos.x86_64.rpm), [docker-engine-selinux]({{ rpm-prefix }}/centos/7/Packages/docker-engine-selinux-{{ rpm-version}}.el7.centos.noarch.rpm) |
|
|
| RHEL 7.2 (only use if you have problems with `selinux` with the packages above) | [docker-engine]({{ rpm-prefix }}/rhel/7.2/Packages/docker-engine-{{ rpm-rhel-version }}.el7.centos.x86_64.rpm), [docker-engine-debuginfo]({{ rpm-prefix }}/rhel/7.2/Packages/docker-engine-debuginfo-{{ rpm-rhel-version }}.el7.centos.x86_64.rpm), [docker-engine-selinux]({{ rpm-prefix }}/rhel/7.2/Packages/docker-engine-selinux-{{ rpm-rhel-version }}.el7.centos.noarch.rpm) |
|
|
| SLES 12 | [docker-engine]({{ rpm-prefix }}/opensuse/12.3/Packages/docker-engine-{{ rpm-version }}.x86_64.rpm) |
|
|
| Ubuntu Xenial | [docker-engine]({{ deb-prefix }}/docker-engine_{{ deb-version }}~ubuntu-xenial_amd64.deb) |
|
|
| Ubuntu Trusty | [docker-engine]({{ deb-prefix }}/docker-engine_{{ deb-version }}~ubuntu-trusty_amd64.deb) |
|
|
| Ubuntu Precise | [docker-engine]({{ deb-prefix }}/docker-engine_{{ deb-version }}~ubuntu-precisel_amd64.deb) |
|