Saltar al contenido

El punto de entrada de Docker que ejecuta el script bash obtiene “permiso denegado”

Solución:

  1. “Permiso denegado” evita que se invoque su secuencia de comandos en absoluto. Por lo tanto, la única sintaxis que podría ser pertinente es la de la primera línea (el “shebang”), que debería verse como #!/usr/bin/env bash, o #!/bin/bash, o similar dependiendo del diseño del sistema de archivos de su objetivo.

  2. Lo más probable es que los permisos del sistema de archivos no estén configurados para permitir la ejecución. También es posible que el shebang haga referencia a algo que no es ejecutable, pero esto es lejos menos probable.

  3. Motivado por la facilidad de reparar los problemas anteriores.


La simple lectura de

docker: Error response from daemon: oci runtime error: exec: "/usr/src/app/docker-entrypoint.sh": permission denied.

… es que el script no está marcado como ejecutable.

RUN ["chmod", "+x", "/usr/src/app/docker-entrypoint.sh"]

abordará esto dentro del contenedor. Alternativamente, puedes asegúrese de que la copia local a la que hace referencia el Dockerfile sea ejecutable, y luego usa COPY (que está explícitamente documentado para retener metadatos).

Un archivo ejecutable debe tener permisos de ejecución establecidos antes de que pueda ejecutarlo.

En su máquina donde está creando la imagen de la ventana acoplable (no dentro de la imagen de la ventana acoplable en sí) intente ejecutar:

ls -la path/to/directory

La primera columna de la salida de su ejecutable (en este caso, docker-entrypoint.sh) debe tener los bits ejecutables configurados de forma similar a:

-rwxrwxr-x

Si no es así, intente:

chmod +x docker-entrypoint.sh

y luego vuelva a construir su imagen de Docker.

Docker usa su propio sistema de archivos, pero copia todo (incluidos los bits de permisos) de los directorios de origen.

Enfrenté el mismo problema y lo resolvió

ENTRYPOINT ["sh", "/docker-entrypoint.sh"]

Para el Dockerfile en la pregunta original debería ser como:

ENTRYPOINT ["sh", "/usr/src/app/docker-entrypoint.sh"]
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *