Necesitaba espacio y ejecuté: docker rmi $(docker images -f "dangling=true" -q)
Desde entonces no puedo con docker-compose: docker-compose build
, aparece el error: ERROR: Error processing tar file(exit status 1): unexpected EOF
.
Intenté eliminar todas las imágenes, reinstalar Docker, pero nada funcionó: siempre el mismo error, después de bastante tiempo.
Construí sobre otro sistema y funcionó, lo que sugiere que se trata de un problema de estado incorrecto.
¿Alguna idea de lo que debo limpiar?
Usando:
▶ docker version Client: Version: 17.03.0-ce API version: 1.24 (downgraded from 1.26) Go version: go1.7.5 Git commit: 3a232c8 Built: Tue Feb 28 08:01:32 2017 OS/Arch: linux/amd64 Server: Version: 1.12.6 API version: 1.24 (minimum version ) Go version: go1.6.2 Git commit: 78d1802 Built: Tue Jan 31 23:35:14 2017 OS/Arch: linux/amd64 Experimental: false ▶ docker-compose version docker-compose version 1.11.2, build dfed245 docker-py version: 2.1.0 CPython version: 2.7.13 OpenSSL version: OpenSSL 1.0.1t 3 May 2016
Tuve el mismo problema y la respuesta aprobada no funcionó para mí.
Resulta que tenía un archivo con permisos que no permitían que el usuario que ejecutaba docker-compose lo leyera. Después de eliminar el archivo, todo estaba bien.
Hay un comando incorporado para eliminar imágenes no utilizadas (Versión 1.13+):
docker image prune
Ahora para manejar la situación:
Detener el servicio Docker
systemctl stop docker
Haga una copia de seguridad de /var/lib/docker
luego:
Eliminar /var/lib/docker
Precaución: Esto eliminará imágenes, contenedores, volúmenes, ... asegúrese de hacer una copia de seguridad primero.
rm -rf /var/lib/docker
Iniciar el servicio Docker
systemctl start docker
Actualizar:
Como se señaló en la otra respuesta, en algunos casos podría ser un problema de permisos de archivo. Revise los permisos.
Para mí fue un error de permiso. Encontré exactamente el mismo problema que PR, ERROR: Error processing tar file(exit status 1): unexpected EOF
Mi solución está sucia pero funcionó para mí
chown -R 777 /foo/bar/project
Casi siempre desea evitar establecer permisos en 777, 655 es más razonable.
0 = --- 1 = --x 2 = -w- 3 = -wx 4 = r- 5 = rx 6 = rw- 7 = rwx
Puede encontrar una explicación más detallada aquí: https://www.pluralsight.com/blog/it-ops/linux-file-permissions