Advisory: This site contains documentation for the v1.12 release candidate version of Docker Engine. For the Docker Engine v1.11 docs, see https://docs.docker.com/v1.11/. Docker for Mac and Docker for Windows are currently in Beta.
Docker is supported Oracle Linux 6 and 7. You do not require an Oracle Linux Support subscription to install Docker on Oracle Linux.
Due to current Docker limitations, Docker is only able to run only on the x86_64 architecture. Docker requires the use of the Unbreakable Enterprise Kernel Release 4 (4.1.12) or higher on Oracle Linux. This kernel supports the Docker btrfs storage engine on both Oracle Linux 6 and 7.
Note: The procedure below installs binaries built by Docker. These binaries are not covered by Oracle Linux support. To ensure Oracle Linux support, please follow the installation instructions provided in the Oracle Linux documentation.
The installation instructions for Oracle Linux 6 and 7 can be found in Chapter 2 of the Docker User's Guide
Log into your machine as a user with
Make sure your existing yum packages are up-to-date.
$ sudo yum update
Add the yum repo yourself.
For version 6:
$ sudo tee /etc/yum.repos.d/docker.repo <<-EOF [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/oraclelinux/6 enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF
For version 7:
$ cat >/etc/yum.repos.d/docker.repo <<-EOF [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/oraclelinux/7 enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF
Install the Docker package.
$ sudo yum install docker-engine
Start the Docker daemon.
On Oracle Linux 6:
$ sudo service docker start
On Oracle Linux 7:
$ sudo systemctl start docker.service
docker is installed correctly by running a test image in a container.
$ sudo docker run hello-world
This section contains optional procedures for configuring your Oracle Linux to work better with Docker.
docker daemon binds to a Unix socket instead of a TCP port. By default
that Unix socket is owned by the user
root and other users can access it with
sudo. For this reason,
docker daemon always runs as the
To avoid having to use
sudo when you use the
docker command, create a Unix
docker and add users to it. When the
docker daemon starts, it
makes the ownership of the Unix socket read/writable by the
dockergroup is equivalent to the
rootuser; For details on how this impacts security in your system, see Docker Daemon Attack Surface for details.
To create the
docker group and add your user:
Log into Oracle Linux as a user with
sudo groupadd docker
Add your user to
sudo usermod -aG docker username
Log out and log back in.
This ensures your user is running with the correct permissions.
Verify your work by running
$ docker run hello-world
If this fails with a message similar to this:
Cannot connect to the Docker daemon. Is 'docker daemon' running on this host?
Check that the
DOCKER_HOST environment variable is not set for your shell.
If it is, unset it.
You can configure the Docker daemon to start automatically at boot.
On Oracle Linux 6:
$ sudo chkconfig docker on
On Oracle Linux 7:
$ sudo systemctl enable docker.service
If you need to add an HTTP Proxy, set a different directory or partition for the Docker runtime files, or make other customizations, read our systemd article to learn how to customize your systemd Docker daemon options.
Docker on Oracle Linux 6 and 7 supports the use of the btrfs storage engine.
Before enabling btrfs support, ensure that
/var/lib/docker is stored on a
btrfs-based filesystem. Review Chapter
5 of the Oracle
Linux Administrator’s Solution
Guide for details
on how to create and mount btrfs filesystems.
To enable btrfs support on Oracle Linux:
/var/lib/docker is on a btrfs filesystem.
/etc/sysconfig/docker and add
-s btrfs to the
Restart the Docker daemon:
To uninstall the Docker package:
$ sudo yum -y remove docker-engine
The above command will not remove images, containers, volumes, or user created configuration files on your host. If you wish to delete all images, containers, and volumes run the following command:
$ rm -rf /var/lib/docker
You must delete the user created configuration files manually.
If you’re running Docker using the btrfs storage engine and you stop the Docker service, it will unmount the btrfs filesystem during the shutdown process. You should ensure the filesystem is mounted properly prior to restarting the Docker service.
On Oracle Linux 7, you can use a
systemd.mount definition and modify the
systemd.service to depend on the btrfs mount defined in systemd.
SElinux must be set to
use the btrfs storage engine on Oracle Linux 7.
If you have a current Basic or Premier Support Subscription for Oracle Linux, you can report any issues you have with the installation of Docker via a Service Request at My Oracle Support.
If you do not have an Oracle Linux Support Subscription, you can use the Oracle Linux Forum for community-based support.