首页 > 解决方案 > ECS 中的错误,在安装 jdk 期间“E:MergeList /jdk-15.0.2_linux-x64_bin.deb 出现问题”

问题描述

我正在尝试使用 Dockerfile 在 ECS 中安装 jdk 15.0.2,但在 docker 构建期间出现以下错误

E:子进程Popen返回错误码(2) E:遇到没有Package的部分:header E:MergeList /jdk-15.0.2_linux-x64_bin.deb有问题

下面是 Dockerfile :

FROM ubuntu:bionic-20191010

RUN apt-get update -y

RUN apt-get install wget -y

RUN mkdir javainst
 
RUN cd javainst
 
RUN apt-get clean

RUN wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn/java/jdk/15.0.2%2B7/0d1cfde4252546c6931946de8db48ee2/jdk-15.0.2_linux-x64_bin.deb

RUN apt install -y ./jdk-15.0.2_linux-x64_bin.deb


RUN apt-get install python3 -y
RUN apt-get install -y python3-pip
RUN pip3 install boto3
RUN pip3 install pandas

以下是完整的错误日志:

Step 8/18 : RUN apt install -y ./jdk-15.0.2_linux-x64_bin.deb
 ---> Running in 8120d0e018eb

警告:apt 没有稳定的 CLI 界面。在脚本中谨慎使用。

正在读取包列表... E:子进程 Popen 返回错误代码(2) E:遇到没有包的部分:标头 E:MergeList /jdk-15.0.2_linux-x64_bin.deb 有问题 E:包列表或无法解析或打开状态文件。命令 '/bin/sh -c apt install -y ./jdk-15.0.2_linux-x64_bin.deb' 返回一个非零代码:100

[容器] 2021/07/30 04:41:25 命令没有成功退出 docker build -t $ECR_REPO:$IMAGE_TAG 。退出状态 100 [容器] 2021/07/30 04:41:25 阶段完成:构建状态:失败 [容器] 2021/07/30 04:41:25 阶段上下文状态代码:COMMAND_EXECUTION_ERROR 消息:执行命令时出错:docker build -t $ECR_REPO:$IMAGE_TAG .. 原因:退出状态 100 [Container] 2021/07/30 04:41:25 进入阶段 POST_BUILD [Container] 2021/07/30 04:41:25 运行命令 echo 构建完成date构建于 2021 年 7 月 30 日星期五 04:41:25 UTC 完成

标签: javaamazon-web-servicesdockeramazon-ec2amazon-ecs

解决方案


推荐阅读