Dorokhov.codes
01. Installation
This is an instruction of installation Docker on CentOS 7.
Adding the Docker repository
We should download the repository file https://download.docker.com/linux/centos/docker-ce.repo and put it into
/etc/yum.repos.d/.
Also, we can do it in a more automatic way using yum-config-manager.
Install the yum-utils package (which provides the yum-config-manager utility) and set up the repository.
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo https://download.docker.com/linux/centos/docker-ce.repo
Installing Docker
The Docker Engine package is called docker-ce.
sudo yum install docker-ce
Package docker-ce-cli will be installed as a dependency.
sudo systemctl start docker
sudo systemctl enable docker
Also, we can install Docker Compose:
sudo yum install docker-compose-plugin
Check installation
sudo docker version
It shows a version of a client and server. Also, it shows a version of Go’s language, that was used during compilation.
Example:
Client: Docker Engine - Community
Version: 20.10.17
API version: 1.41
Go version: go1.17.11
Git commit: 100c701
Built: Mon Jun 6 23:05:12 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
Git commit: a89b842
Built: Mon Jun 6 23:03:33 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.6
GitCommit: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
runc:
Version: 1.1.2
GitCommit: v1.1.2-0-ga916309
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Another way to check installation is to run some container:
sudo docker container run hello-world
Manage Docker without sudo
The 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 only access it using sudo.
If you don’t want to preface the docker command with sudo, add users to the group docker.
When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
sudo usermod -aG docker andrew
Restart Docker:
sudo systemctl restart docker
Log out and log back in so that your group membership is re-evaluated.
Verify that everything works without sudo:
docker run hello-world