Upgrade docker on CentOS 7

Update to upgrade docker CentOS 7.4

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux  docker-engine-selinux docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce


sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker

Refer:

https://docs.docker.com/install/linux/docker-ce/centos/


Note that current stable version of Docker is actually 1.3, not 1.2. See the Docker CHANGELOG to discover the latest version.

Before upgrading your docker host, you might want to backup some of the docker images you have, especially those issued from the docker commit command. To do so, take a look at the docker export command. You might also want to backup your containers' volumes. For that take a look at the Docker user guide on data volumes.

Once you are confident you have all the backups you need for an eventual fresh start you can move on upgrading your Docker daemon.

On the Docker installation guide for CentOS 7, it is advised to install docker from the binaries if you want the latest. I suggest you follow those instructions to install the latest docker. Docker now provides updates through the yum package manager.

Once done with that use the docker images command to verify if you still have your Docker images and docker ps to check your containers. If some are missing, recreate them from your backups.

If you created docker images from custom Dockerfiles, you also want to rebuild those images to check that no Dockerfile has issues with the new Docker daemon. There is a big gap between Docker 0.11.1 and 1.3 and fixes and new features were brought to the Dockerfiles syntax.


In details here are the commands to run once you are ready to upgrade docker:

# stop the docker service
$ sudo service docker stop

# download the latest docker binary and replace the current outdated docker
# DEPRECATED WAY TO UPGRADE DOCKER: $ sudo wget https://get.docker.com/builds/Linux/x86_64/docker-latest -O /usr/bin/docker
$ sudo yum update docker-engine

# start the docker service
$ sudo service docker start

# check the version
$ sudo docker version

# check the images and containers
$ sudo docker images
$ sudo docker ps
$ sudo docker ps -a