Docker CE on RHEL - Requires: container-selinux >= 2.9
DockerUnixRhelDocker Problem Overview
I am trying to install Docker CE
on RHEL
using this link. This is my RHEL version:
Red Hat Enterprise Linux Server release 7.3 (Maipo)
When I execute this:
sudo yum -y install docker-ce
I am getting this error:
Error: Package: docker-ce-17.06.0.ce-1.el7.centos.x86_64 (docker-ce-stable)
Requires: container-selinux >= 2.9
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
I tried using --skip-broken
and rpm -Va --nofiles --nodigest
but again getting the same error. Please let me know how to resolve this issue and install Docker CE in RHEL 7.3.
Docker Solutions
Solution 1 - Docker
The container-selinux
package is available from the rhel-7-server-extras-rpms
channel. You can enable it using:
subscription-manager repos --enable=rhel-7-server-extras-rpms
Sources for the package have been exported to git.centos.org
, too, so you could rebuild it yourself using mock
:
(This is not a programming question, so you should use one of the other sites.)
Solution 2 - Docker
Installing the Selinux from the Centos repository worked for me:
1. Go to http://mirror.centos.org/centos/7/extras/x86_64/Packages/
2. Find the latest version for container-selinux i.e. container-selinux-2.21-1.el7.noarch.rpm
3. Run the following command on your terminal: $ sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/**Add_current_container-selinux_package_here**
4. The command should looks like the following $ sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.21-1.el7.noarch.rpm
Note: the container version is constantly being updated, that is why you should look for the latest version in the Centos' repository
Solution 3 - Docker
Just install selinux latest version to fix it:
sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.107-3.el7.noarch.rpm
More versions at http://mirror.centos.org/centos/7/extras/x86_64/Packages/
Older versions of 2.9: http://ftp.riken.jp/Linux/cern/centos/7/extras/x86_64/Packages/
Solution 4 - Docker
Error: Package: 2:container-selinux-2.74-1.el7.noarch (rhel-7-server-extras-rpms)
Requires: selinux-policy >= 3.13.1-216.el7
Installed: selinux-policy-3.13.1-192.el7_5.6.noarch (@rhel-7-server-rpms)
selinux-policy = 3.13.1-192.el7_5.6
#there is dependency issue with the container-selinux version
to fix this error on rhel 7.x i have performed the below things
-
yum install http://vault.centos.org/centos/7.3.1611/extras/x86_64/Packages/container-selinux-2.9-4.el7.noarch.rpm
-
yum install -y yum-utils device-mapper-persistent-data lvm2
-
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4 ) yum install docker-ce
now start the docker service
Solution 5 - Docker
Docker CE is not supported on RHEL. Any way you are trying to get around that is not a supported way. You can see the supported platforms in the Docker Documentation. I suggest you either use a supported OS, or switch to Enterprise Edition.
Solution 6 - Docker
You have already have container-selinux installed for version 3.7 check if the following docker-ce version works for you , it did for me.
sudo yum -y install docker-ce-cli.x86_64 1:19.03.5-3.el7
Solution 7 - Docker
Head to http://mirror.centos.org/centos/7/extras/x86_64/Packages/ and get the link to the latest container-selinux package. In my case the link was http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm
Head to your terminal as root and run:
> yum install http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm
After that you can proceed to install docker: > yum install docker-ce
Solution 8 - Docker
To resolve the following error I was facing to install docker-ce on RHEL-7
Error: Package: 3:docker-ce-18.09.5-3.el7.x86_64 (docker-ce-stable)
Requires: container-selinux >= 2.9
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Please run following command before installing latest version of docker-ce
yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm
Once previous command runs successfully then install docker-ce with following command
yum -y install docker-ce
once installation is done then run
systemctl start docker
Note : Run all these commands with root user
Solution 9 - Docker
To update container-selinux
I had to install epel-release
first:
Add Centos-7 repository
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
Install epel-release
yum install epel-release
Update container-selinux
yum install container-selinux
Solution 10 - Docker
I was getting the same error Requires: container-selinux >= 2.9 on amazon ec2 instance(Rhel7)
I tried to add extra package rmp repo by executing
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras
but it works.
followed steps from https://installdocker.blogspot.com/ and I was able to install docker.
Solution 11 - Docker
Try:
yum install http://vault.centos.org/centos/7.3.1611/extras/x86_64/Packages/container-selinux-2.9-4.el7.noarch.rpm
It worked for me.
Solution 12 - Docker
[SOLVED] Simple one command to fix this issue.
yum install http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.107-3.el7.noarch.rpm
Solution 13 - Docker
DOCKER Ce is not officialy supported on REHL to fix that run the below commands
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.107-3.el7.noarch.rpm
sudo rpm -i container-selinux-2.107.el7.noarch.rpm
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/slirp4netns-0.4.3-4.el7_8.x86_64.rpm
#Set up the Docker CE repository on RHEL:
sudo yum install -y yum-utils
sudo yum install -y device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum makecache fast
yum install docker-ce docker-ce-cli containerd.io
#Start Docker:
sudo systemctl start docker
#Test your Docker CE installation:
sudo docker run hello-world
Solution 14 - Docker
Update June 2019
What a dogs dinner. Unfortunately, the other answers didn't work for me.
For the most part, the official docker instructions for installing using a repository DID work.
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
Followed by:
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
However, I had to modify the next command as follows (adding --nobest):
sudo yum install docker-ce --nobest
Finally, check the docker client:
docker --version
Docker version 18.09.7, build 2d0083d
Note also, the above works for standard RHEL AMI on AWS, but not for the Amazon Linux AMI type. May also find referencing this github issue insightful.
Added bonus, I found the following additional commands helpful:
Start the docker daemon:
sudo systemctl start docker.service
Give the current user (in my case ec2-user
- check with whoami
) rights to the docker group. This avoids running everything with sudo.
sudo usermod -aG docker $USER
Now, logoff and login again as same user as before (in my case ec2-user
).
At this point, everything should be working. Check the docker daemon:
docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
Solution 15 - Docker
On CentOS7 I had to follow the third install method, get-docker.sh https://docs.docker.com/install/linux/docker-ce/centos/#install-using-the-convenience-script
Solution 16 - Docker
The best way to resolve this one is. Download the latest container-selinux package from http://mirror.centos.org/centos/7/extras/x86_64/Packages/ into the VM or the Machine where docker needs to be installed. Error : sometime it will ask for red hat subscription to download from repo. we can do it manually with out subscription as below Run the below command this will install dependencies manually rpm -i container-selinux-2.107-3.el7.noarch.rpm then run the yum install docker-ce
thanks Saa
Solution 17 - Docker
As with other answers, adding the "extras" subscribed channels to a CentOS 7 Spacewalk deployment solves this problem as well.
Solution 18 - Docker
If we face issues in installing docker in an aws ec2 instance. Follow the below steps :
sudo yum update -y
sudo amazon-linux-extras install docker
sudo yum install docker
sudo service docker start
sudo systemctl enable docker
systemctl status docker
(link : https://docs.aws.amazon.com/AmazonECS/latest/developerguide/docker-basics.html)
Solution 19 - Docker
I followed many links including the official documentation, however it all ended up in this error:
Requires: container-selinux >= 2.9
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
The only way it worked for me is as follows (yum upgrade
worked I guess):
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum upgrade docker-ce
Solution 20 - Docker
this link helped me to solve this issue
Here is the solution: For centos: try
sudo yum install --setopt=obsoletes=0 \
> docker-ce-17.03.2.ce-1.el7.centos.x86_64 \
> docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch
For Rhel:
sudo yum install --setopt=obsoletes=0 docker-ce-17.03.3.ce-1.el7.x86_64.rpm docker-ce-selinux-17.03.3.ce-1.el7.noarch.rpm