Ubuntu Docker Installation
Docker Engine-Community supports the following Ubuntu versions:
- Xenial 16.04 (LTS)
- Bionic 18.04 (LTS)
- Cosmic 18.10
- Disco 19.04
- Other newer versions...
Docker Engine-Community supports x86_64 (or amd64), armhf, arm64, s390x (IBM Z), and ppc64le (IBM Power) architectures.
Automatic Installation Using Official Script
Use the following command for installation:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
Alternatively, you can use the one-click installation command from DaoCloud:
curl -sSL https://get.daocloud.io/docker | sh
Manual Installation
Uninstall Old Versions
Older versions of Docker were called docker, docker.io, or docker-engine. If installed, uninstall them:
$ sudo apt-get remove docker docker-engine docker.io containerd runc
The current package for Docker Engine-Community is docker-ce.
To install Docker Engine-Community, two methods are introduced below.
Install Using Docker Repository
Before installing Docker Engine-Community 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.
Set Up Repository
Update the apt package index:
$ sudo apt-get update
Install packages to allow apt to use a repository over HTTPS:
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
Add Docker’s official GPG key:
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 by searching for the last eight characters of the fingerprint.
$ sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <[email protected]>
sub rsa4096 2017-02-22 [S]
Use the following command to set up the stable repository:
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(lsb_release -cs) \
stable"
Install Docker Engine-Community
Update the apt package index:
$ sudo apt-get update
Install the latest version of Docker Engine-Community and containerd, or go to the next step to install a specific version:
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
To install a specific version of Docker Engine-Community, list the available versions in the repo, then select and install:
$ apt-cache madison docker-ce
docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 18.06.1~ce~3-0~ubuntu | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 18.06.0~ce~3-0~ubuntu | https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 Packages
...
Install a specific version using the version string from the second column, for example, 5:18.09.1~3-0~ubuntu-xenial.
$ sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
Test Docker installation by running the following command, which should print the following message if successful:
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
Installation Using Shell Script
Docker provides convenience scripts at get.docker.com and test.docker.com for quickly installing the edge and test versions of Docker Engine-Community. The source code for the scripts is in the docker-install repository. It is not recommended to use these scripts for production environments, and you should be aware of the potential risks before using them:
- The scripts require root or sudo privileges to run. Therefore, you should carefully review and audit the scripts before running them.
- The scripts attempt to detect your Linux distribution and version and configure your package management system for you. They do not allow you to customize any installation parameters. This may lead to unsupported configurations from both Docker’s and your organization’s guidelines and standards.
- The scripts install all dependencies and recommendations of the package manager without asking for confirmation. This may install a large number of packages, depending on the current configuration of your host.
- The scripts do not provide an option to specify which version of Docker to install, and they install the latest version published in the edge channel.
- If Docker is already installed on your host using other mechanisms, do not use the convenience scripts.
This example uses the script from get.docker.com to install the latest version of Docker Engine-Community on Linux. To install the latest test version, use test.docker.com instead. Replace each occurrence of get with test in the following commands.
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
If you would like to use Docker as a non-root user, you should consider adding the user to the docker group, e.g.:
$ sudo usermod -aG docker your-user
Uninstall Docker
Remove the Docker package:
sudo apt-get purge docker-ce
Delete images, containers, and configuration files:
sudo rm -rf /var/lib/docker