web-dev-qa-db-fra.com

Pourquoi est-ce que j'obtiens "décompresser: lecture courte" lorsque j'essaye de construire une image à partir de Dockerfile?

De Spring Microservices in Action book: J'essaie d'utiliser Docker Maven Plugin pour construire une image docker pour déployer un Java microservice en tant que conteneur Docker dans le cloud.

Dockerfile:

FROM openjdk:8-jdk-Alpine
RUN mkdir -p /usr/local/configserver
ADD jce_policy-8.Zip /tmp/
RUN unzip /tmp/jce_policy-8.Zip && \
    rm /tmp/jce_policy-8.Zip && \
    yes | cp -v /tmp/UnlimitedJCEPolicyJDK8/*.jar /usr/lib/jvm/Java-1.8-openjdk/jre/lib/security/
ADD @[email protected] /usr/local/configserver/
ADD run.sh run.sh
RUN chmod +x run.sh
CMD ./run.sh

Sortie liée à l'étape 4 dans Dockerfile:

...

---> Using cache
---> dd33d4c12d29
Step 4/8 : RUN unzip /tmp/jce_policy-8.Zip && rm /tmp/jce_policy-8.Zip && yes | cp -v /tmp/UnlimitedJCEPolicyJDK8/*.jar /usr/lib/jvm/Java-1.8-openjdk/jre/lib/security/

---> Running in 1071273ceee5
Archive:  /tmp/jce_policy-8.Zip
unzip: short read

Pourquoi est-ce que j'obtiens unzip: short read lorsque j'essaye de construire l'image?

6
lcnicolau

Cela est peut-être lié au fait que la commande unzip dans Alpine est fournie avec busybox et non avec l'outil de décompression standard.

Busybox contient des bogues liés à cette erreur: https://bugs.busybox.net/show_bug.cgi?id=8821

Voici un problème connexe avec plus de détails: https://github.com/wahern/luaossl/issues/1

Pour résoudre ce problème, l'installation de la commande standard unzip devrait fonctionner.

0
mickours