Docker CE en RHEL - Requiere: container-selinux> = 2.9


84

Estoy tratando de instalar Docker CEen RHELel uso de este enlace . Esta es mi versión RHEL:

Red Hat Enterprise Linux Server release 7.3 (Maipo)

Cuando ejecuto esto:

sudo yum -y install docker-ce

Recibo este 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

Intenté usar --skip-brokeny, rpm -Va --nofiles --nodigestpero nuevamente obtuve el mismo error. Infórmeme cómo resolver este problema e instalar Docker CE en RHEL 7.3.


1
Si solo desea que funcione (sabiendo que está utilizando un rpm no compatible), consulte stackoverflow.com/a/45033117/3370010
waternova

Respuestas:


68

El container-selinuxpaquete está disponible en el rhel-7-server-extras-rpmscanal. Puede habilitarlo usando:

subscription-manager repos --enable=rhel-7-server-extras-rpms

Las fuentes del paquete también se han exportado git.centos.org, por lo que puede reconstruirlo usted mismo usando mock:

(Esta no es una pregunta de programación, por lo que debe usar uno de los otros sitios).


No tengo una suscripción activa. ¿Alguna forma alternativa?
user182944

Puede usar mockpara construir el paquete a partir de las fuentes engit.centos.org . mocken sí mismo está en EPEL, pero probablemente depende de algunos paquetes de Red Hat Enterprise Linux que aún no ha instalado, por lo que primero debe realizar una transición de grados a CentOS.
Florian Weimer

3
ReciboError: 'rhel-7-server-extras-rpms' does not match a valid repository ID.
prayagupd

@prayagupd Esto parece un problema de gestión de suscripción no relacionado. Deberías abrir un caso de soporte.
Florian Weimer

@prayagupd es demasiado tarde para responder, pero es porque es posible que no esté usando la edición del servidor RHEL, es posible que esté usando la estación de trabajo.
Anurag Sinha

64

La instalación de Selinux desde el repositorio de Centos funcionó para mí:
1. Vaya a http://mirror.centos.org/centos/7/extras/x86_64/Packages/
2. Busque la última versión de container-selinux i.e. container-selinux-2.21-1.el7.noarch.rpm
3. Ejecute lo siguiente comando en su terminal: $ sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/**Add_current_container-selinux_package_here**
4. El comando debe verse como el siguiente $ sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.21-1.el7.noarch.rpm
Nota: la versión del contenedor se actualiza constantemente, es por eso que debe buscar la última versión en el repositorio de Centos


1
¿Alguna forma fácil de escribir un script para que encuentre la última versión por sí mismo?
luker02

51

Simplemente instale la última versión de selinux para solucionarlo:
sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.107-3.el7.noarch.rpm

Más versiones en http://mirror.centos.org/centos/7/extras/x86_64/Packages/

Versiones anteriores de 2.9: http://ftp.riken.jp/Linux/cern/centos/7/extras/x86_64/Packages/


2
Gracias, esto funcionó para mí. Para los futuros usuarios de Google, es casi seguro que copiar y pegar lo que tienen arriba no funcionará ya que es antiguo en este momento. Vaya al enlace de más versiones y obtenga la última versión (copiar la dirección del enlace).
rjhilgefort

26

Error: Paquete: 2: container-selinux-2.74-1.el7.noarch (rhel-7-server-extras-rpms)

Requiere: selinux-policy> = 3.13.1-216.el7

Instalado: selinux-policy-3.13.1-192.el7_5.6.noarch (@ rhel-7-server-rpms)

selinux-policy = 3.13.1-192.el7_5.6

hay un problema de dependencia con la versión de container-selinux

para corregir este error en rhel 7.xi he realizado las siguientes cosas

1) instalación de yum http://vault.centos.org/centos/7.3.1611/extras/x86_64/Packages/container-selinux-2.9-4.el7.noarch.rpm

2) yum install -y yum-utils device-mapper-persistent-data lvm2

3) yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4) yum instala docker-ce

ahora inicia el servicio de Docker


yum install vault.centos.org/centos/7.3.1611/extras/x86_64/Packages/… era la única forma de instalar container-selinux. ¡Gracias!
rogervila

Es importante señalar que, antes de instalar docker-ce, es posible que se requiera una actualización de yum dependiendo de su versión
rogervila

falla: repodata / repomd.xml desde la base: [Errno 256] No más espejos para probar.
Yanov

11

Docker CE no es compatible con RHEL. Cualquier forma en la que intente evitarlo no es una forma compatible. Puede ver las plataformas compatibles en la documentación de Docker . Le sugiero que utilice un sistema operativo compatible o cambie a Enterprise Edition.


8

Ya ha instalado container-selinux para la versión 3.7, compruebe si la siguiente versión de docker-ce funciona para usted, a mí me funcionó.

sudo yum -y install docker-ce-cli.x86_64 1:19.03.5-3.el7

2
¡esto realmente funcionó para mí! literalmente, ninguna de las otras respuestas lo hizo.
jimh

5

Dirígete a http://mirror.centos.org/centos/7/extras/x86_64/Packages/ y obtén el enlace al último paquete container-selinux. En mi caso, el enlace era http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm

Dirígete a tu terminal como root y ejecuta:

yum install http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm

Después de eso, puede proceder a instalar Docker:

yum instalar docker-ce


4

Para resolver el siguiente error al que me enfrentaba para instalar docker-ce en 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

Ejecute el siguiente comando antes de instalar la última versión de docker-ce

yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm

Una vez que el comando anterior se ejecute correctamente, instale docker-ce con el siguiente comando

yum -y install docker-ce

una vez finalizada la instalación, ejecute

systemctl start docker

Nota: ejecute todos estos comandos con el usuario root



3

Para actualizar container-selinuxtuve que instalar epel-releaseprimero:

Agregar repositorio Centos-7

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

Instalar en pc epel-release

yum install epel-release

Actualizar container-selinux

yum install container-selinux

mirrors.aliyun.com/centos/7/extras/x86_64/Packages/… : [Errno 14] Error HTTP 404 - No encontrado
AnneTheAgile


2

Recibí el mismo error Requiere: container-selinux> = 2.9 en la instancia de amazon ec2 (Rhel7)

Intenté agregar un repositorio rmp de paquete adicional ejecutando sudo yum-config-manager --enable rhui-REGION-rhel-server-extras
pero funciona. Seguí los pasos de https://installdocker.blogspot.com/ y pude instalar Docker.


2

Tratar:

yum install http://vault.centos.org/centos/7.3.1611/extras/x86_64/Packages/container-selinux-2.9-4.el7.noarch.rpm

Funcionó para mí.


Su respuesta no agrega ninguna información nueva. Esto ya fue respondido por otra persona
Ankur Aggarwal

@AnkurAggarwal cuando dejas comentarios relacionados con la moderación, deberías ser más específico que "Esto ya fue respondido por otra persona". Esa tampoco es una razón válida; el hecho de que se responda no significa que no se le permita agregar otra respuesta, asumiendo que no es un plagio flagrante y sigue las reglas generales para las respuestas SE.
Zoe

2

[SOLUCIONADO] Un comando simple para solucionar este problema.

yum install http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.107-3.el7.noarch.rpm


0

Actualización de junio de 2019

Qué cena de perros. Desafortunadamente, las otras respuestas no me funcionaron.

En su mayor parte, las instrucciones oficiales de la ventana acoplable para instalar usando un repositorio DID funcionaron.

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

Seguido por:

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

Sin embargo, tuve que modificar el siguiente comando de la siguiente manera (agregando --nobest ):

sudo yum install docker-ce --nobest

Finalmente, verifique el cliente de Docker :

docker --version
Docker version 18.09.7, build 2d0083d

Tenga en cuenta también que lo anterior funciona para RHEL AMI estándar en AWS, pero no para el tipo de AMI de Amazon Linux. También puede resultarle útil hacer referencia a este problema de github .

Bono adicional, encontré útiles los siguientes comandos adicionales:

Inicie el demonio de la ventana acoplable :

sudo systemctl start docker.service

Otorgue al usuario actual (en mi caso ec2-user, verifique whoami) derechos para el grupo de docker. Esto evita ejecutar todo con sudo.

sudo usermod -aG docker $USER

Ahora, cierre la sesión y vuelva a iniciar sesión como el mismo usuario que antes (en mi caso ec2-user).

En este punto, todo debería estar funcionando. Compruebe el demonio de la ventana acoplable :

docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

Algo del lado de Docker cambió muy recientemente. Ahora requieren container-selinux 2.74. Esto nos impide instalar Docker en centos7.4 ahora.
Halsafar

0

La mejor forma de resolver este es. Descargue el último paquete container-selinux de http://mirror.centos.org/centos/7/extras/x86_64/Packages/ en la VM o en la máquina donde se debe instalar la ventana acoplable. Error: en algún momento solicitará la suscripción a Red Hat para descargar desde el repositorio. podemos hacerlo manualmente sin suscripción como se muestra a continuación Ejecute el siguiente comando, esto instalará las dependencias manualmente rpm -i container-selinux-2.107-3.el7.noarch.rpm y luego ejecute yum install docker-ce

gracias Saa


0

Al igual que con otras respuestas, agregar los canales suscritos "extras" a una implementación de CentOS 7 Spacewalk también resuelve este problema.


-1

Seguí muchos enlaces, incluida la documentación oficial, sin embargo, todo terminó en este 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

La única forma en que funcionó para mí es la siguiente ( yum upgradefuncionó, supongo):

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum upgrade docker-ce

-1

este enlace me ayudó a resolver este problema

Aquí está la solución: Para centos: intente

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

Para 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

Si bien este enlace puede responder la pregunta, es mejor incluir aquí las partes esenciales de la respuesta y proporcionar el enlace como referencia. Las respuestas de solo enlace pueden perder su validez si cambia la página enlazada. - De la crítica
Benny Bottema

Se actualizó la respuesta con explicación
user_dev
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.