Este equipo de redactores ha pasado mucho tiempo investigando para darle solución a tu duda, te brindamos la respuestas así que esperamos servirte de mucha apoyo.
Solución:
Openshift tiene una política de seguridad estricta con respecto a las compilaciones personalizadas de Docker.
Eche un vistazo a esta plataforma de aplicaciones OpenShift
En particular, en el punto 4 de la sección de preguntas frecuentes, aquí citado.
4. ¿Por qué mi imagen de Docker no se ejecuta en OpenShift?
¡Seguridad! Origin se ejecuta con la siguiente política de seguridad de forma predeterminada:
Los contenedores se ejecutan como un usuario único no root que está separado de otros usuarios del sistema. No pueden acceder a los recursos del host, ejecutarse con privilegios o convertirse en root. Se les otorgan límites de CPU y memoria definidos por el administrador del sistema. Cualquier almacenamiento persistente al que accedan estará bajo un único Etiqueta SELinux, que evita que otros vean su contenido. Estas configuraciones son por proyecto, por lo que los contenedores en diferentes proyectos no pueden verse entre sí de manera predeterminada. Los usuarios regulares pueden ejecutar compilaciones de Docker, fuente y personalizadas. De manera predeterminada, las compilaciones de Docker pueden ejecutarse (y a menudo lo hacen). como raíz. Puede controlar quién puede crear compilaciones de Docker a través del recurso de políticas builds/docker y builds/custom. Los usuarios habituales y los administradores de proyectos no pueden cambiar sus cuotas de seguridad.
Muchos contenedores Docker esperan ejecutarse como root (y, por lo tanto, editar todo el contenido del sistema de archivos). La guía del autor de la imagen brinda recomendaciones para hacer que su imagen sea más segura de manera predeterminada:
No ejecutar como root
Haga que los directorios en los que desea escribir puedan escribirse en grupo y sean propiedad del ID de grupo 0 Establezca la capacidad de vinculación de red en sus ejecutables si necesitan vincularse a puertos <1024
De lo contrario, puede consultar la documentación de seguridad para obtener descripciones sobre cómo relajar estas restricciones.
Espero que ayude.
Aunque no tiene acceso a la raíz, su contenedor OpenShift, de forma predeterminada, es miembro del grupo raíz. Puede cambiar algunos permisos de directorio/archivo para evitar el Permission Denied
errores
Si está utilizando un Dockerfile para implementar una imagen en OpenShift, puede agregar el siguiente comando EJECUTAR a su Dockerfile:
RUN chgrp -R 0 /run && chmod -R g=u /run
Esto cambiará el grupo para todo en el directorio /run al grupo raíz y luego establecerá el permiso de grupo en todos los archivos para que sea equivalente al propietario (grupo es igual a usuario) del archivo. Básicamente, cualquier usuario del grupo raíz tiene los mismos permisos que el propietario de cada archivo.
Te mostramos las comentarios y valoraciones de los usuarios
Recuerda dar recomendación a esta reseña si lograste el éxito.