Nic*_*lau 6 unzip docker dockerfile alpine-linux docker-maven-plugin
摘自Spring Microservices in Action一书:我正在尝试使用Docker Maven插件来构建Docker映像,以将Java微服务作为Docker容器部署到云中。
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 @project.build.finalName@.jar /usr/local/configserver/
ADD run.sh run.sh
RUN chmod +x run.sh
CMD ./run.sh
Run Code Online (Sandbox Code Playgroud)
与Dockerfile中的第4步相关的输出:
Run Code Online (Sandbox Code Playgroud)... ---> 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
尝试构建映像时为什么会得到提示unzip: short read ?
小智 5
以某种方式,下载jce zip文件时,alpine linux发行版上的curl无法正确设置cookie标头。似乎它下载了一个zip文件,但实际上它是一个html错误页面。如果您查看该文件,则可以看到它是一个html文件。我用wget代替curl,它成功下载了文件。然后解压缩操作按预期工作。
FROM openjdk:8-jdk-alpine
RUN apk update && apk upgrade && apk add netcat-openbsd
RUN mkdir -p /usr/local/configserver
RUN cd /tmp/ && \
wget 'http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip' --header "Cookie: oraclelicense=accept-securebackup-cookie" && \
unzip jce_policy-8.zip && \
rm jce_policy-8.zip && \
yes |cp -v /tmp/UnlimitedJCEPolicyJDK8/*.jar /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/
ADD @project.build.finalName@.jar /usr/local/configserver/
ADD run.sh run.sh
RUN chmod +x run.sh
CMD ./run.sh
Run Code Online (Sandbox Code Playgroud)
小智 5
unzip也许这与alpine中提供的命令是busybox而不是标准的解压工具有关。
Busybox 确实存在与此错误相关的错误: https://bugs.busybox.net/show_bug.cgi ?id=8821
这是一个包含更多详细信息的相关问题: https ://github.com/wahern/luaossl/issues/103
作为解决方法,安装标准unzip命令应该可行。
您的存档可能jce_policy-8.zip被识别为压缩存档并通过ADD指令进行扩展。如果是这样,您可以在下一行跳过解压缩。或者,切换到该COPY指令,该指令不对本地档案进行特殊处理。
一般来说,我建议始终使用COPY指令从构建上下文中引入文件和目录。ADD仅当您特别需要额外的拆包行为时才使用。
| 归档时间: |
|
| 查看次数: |
3044 次 |
| 最近记录: |