Problema: nginx: [emerg] mkdir() “/var/cache/nginx/client_temp” fallido (13: Permiso denegado)
Estoy tratando de ejecutar Nginx en Openshift pero estoy enfrentando problemas de permisos de directorio. Debido a este error, el contenedor no se está creando.
Los siguientes permisos están establecidos para los archivos creados manualmente.
drwxr-xr-x. 3 root root 79 Dec 22 02:50 /etc/nginx
drwxr-xr-x. 2 root root 26 Dec 22 02:50 /etc/nginx/conf.d
-rw-r--r--. 1 root root 5231 Dec 22 02:48 /etc/nginx/mime.types
drwxrwxr-x. 3 root root 25 Dec 22 01:23 /var/cache/nginx
drwxrwxr-x. 2 root root 6 Dec 22 01:10 /var/log/nginx
drwxrwxr-x. 47 root root 1340 Dec 21 06:51 /var/run
davy.ai
El problema aquí parece estar relacionado con los permisos de directorio establecidos como
root
en lugar del usuarionginx
adecuado. Para ejecutarNginx
enOpenshift
, debemos asegurarnos de que los permisos adecuados estén establecidos para el usuarionginx
.Podemos comenzar verificando los IDs de usuario y grupo que se utilizan en el contenedor
nginx
, ejecutando el siguiente comando:Esto mostrará los IDs de usuario y grupo que se utilizan en el contenedor
nginx
, algo como:A partir de esta salida, podemos ver que el ID de usuario y grupo utilizado por el contenedor
nginx
es101
.Ahora, necesitamos actualizar los permisos del directorio para permitir que el usuario
nginx
tenga acceso a ellos. Podemos hacer esto ejecutando el siguiente comando para cada directorio:Esto actualizará los permisos de los directorios para que sean accesibles por el usuario
nginx
. Una vez establecidos los permisos, podemos intentar ejecutar el contenedor nuevamente y debería crearlo sin ningún problema.