Tengo el siguiente Dockerfile que usa la última imagen de Ubuntu extraída de dockerhub:
FROM ubuntu:latest RUN apt-get update && apt-get install -y g++ llvm lcovcuando ejecuto el comando de compilación docker, ocurren los siguientes errores:
Err:2 http://archive.ubuntu.com/ubuntu bionic InRelease Se encontró al menos una firma no válida.
Err:1 http://security.ubuntu.com/ubuntu bionic-security InRelease Se encontró al menos una firma no válida.
Err:3 http://archive.ubuntu.com/ubuntu bionic-updates InRelease Se encontró al menos una firma no válida.
Err:4 http://archive.ubuntu.com/ubuntu bionic-backports InRelease Se encontró al menos una firma no válida.
Leyendo listas de paquetes...
W: error de GPG: http://archive.ubuntu.com/ubuntu bionic InRelease: se encontró al menos una firma no válida. E: El repositorio ' http://archive.ubuntu.com/ubuntu bionic InRelease' no está firmado.
W: error de GPG: http://security.ubuntu.com/ubuntu bionic-security InRelease: se encontró al menos una firma no válida. E: El repositorio ' http://security.ubuntu.com/ubuntu bionic-security InRelease' no está firmado.
W: error de GPG: http://archive.ubuntu.com/ubuntu bionic-updates InRelease: se encontró al menos una firma no válida. E: El repositorio ' http://archive.ubuntu.com/ubuntu bionic-updates InRelease' no está firmado.
W: error de GPG: http://archive.ubuntu.com/ubuntu bionic-backports InRelease: se encontró al menos una firma no válida. E: El repositorio ' http://archive.ubuntu.com/ubuntu bionic-backports InRelease' no está firmado.
Leí aquí https://superuser.com/questions/1331936/how-can-i-get-past-a-repository-is-not-signed-message-when-attempting-to-upgr que puede pasar este error usando --allow-unauthenitcated o --allow-insecure-repositories pero ambos me parecen soluciones alternativas que pueden comprometer la seguridad del contenedor.
EDITAR
Intenté extraer ubuntu: 18.04, ubuntu: 19: 04, ubuntu: 19.10 mismo error con un nombre de distribución diferente
Aparentemente, mi partición raíz estaba llena (tal vez intenté muchas veces descargar paquetes a través de apt), y ejecutar sudo apt clean resolvió el problema
Eliminé muchas imágenes y luego solucionó mi problema.
Lo intenté de nuevo más tarde y funcionó.
Desde https://github.com/docker-library/php/issues/898#issuecomment-539234070 :
Eso generalmente significa que el espejo tiene problemas (posiblemente parcialmente desactualizado; es decir, no está completamente sincronizado con otros espejos) y, a menudo, se soluciona solo.
Como @Danila y @Andriy señalaron, este problema se puede solucionar fácilmente ejecutando:
docker image prune -f docker container prune -fpero publicar esta respuesta, ya que ejecutar solo uno de ellos no funcionó para mí (en MacOS X ), pero ejecutar ambos sí.
Si usa Docker Desktop, cuide el tamaño máximo de imagen de disco que especificó en la configuración. Puede causar el problema si se llena durante la compilación.
Arreglado por
docker image prune -fparece que docker tiene un límite en el tamaño máximo de caché de apt en el sistema host
Tuve este problema en una de mis dos máquinas. Haciendo un ls -ld /tmp obtuve
drwxrwxrwt 3 root root 4096 May 15 20:46 /tmppara el trabajador y
drwxr-xr-t 1 root root 4096 May 26 05:44 /tmp por el que falla. Después de hacer chmod 1777 /tmp , ¡funcionó!
EDITAR:
Entonces, me sumergí un poco más en este problema y me di cuenta de que había algo fundamentalmente mal. Puse mis problemas en otra pregunta y luego encontré la respuesta que resolvió esto yo mismo: https://stackoverflow.com/a/62088961/7387935
El punto clave aquí es que en la máquina que funcionaba correctamente tenía aufs como controlador de almacenamiento y en la defectuosa era overlay2. Después de cambiar eso, todos los permisos eran correctos.
Ejecutar el siguiente comando solucionó el problema para mí:
docker system prune --force La --force significa poda no interactiva.
Además, es posible que desee probar los comandos de reducción de volumen:
docker volume prune --forcePara Raspbian, actualice libseccomp manualmente en el sistema host usando:
curl http://ftp.us.debian.org/debian/pool/main/libs/libseccomp/libseccomp2_2.5.1-1_armhf.deb --output libseccomp2_2.5.1-1_armhf.deb sudo dpkg -i libseccomp2_2.5.1-1_armhf.debEsto resolvió mi problema.
La publicación original está aquí .
Tuve que ejecutar el contenedor con --security-opt seccomp:unconfined .
Esto me ayuda:
docker volume prune