我的Dockerfile:
FROM frolvlad/alpine-glibc:latest
ADD jdk-11.0.6_linux-x64_bin.tar.gz /usr/java
ENV JAVA_HOME=/usr/java/jdk-11.0.6
ENV PATH=$JAVA_HOME/bin:$PATH当我在容器中运行命令java -version时,我得到以下segfault:

如何解决这个问题?
发布于 2020-02-01 17:43:38
frolvlad/alpine-glibc是一个支持glibc的Alpine Linux映像,而jdk-11.0.6_linux-x64_bin.tar.gz很可能是一个大陆版的Linux JDK glibc。从理论上讲,这应该没问题,但可能有一些微妙的glibc不兼容导致了这一点。
如果你正在寻找高山上的Java11,你可以抓取普通的高山3.11镜像,然后在上面安装openjdk11包:
sudo docker run -it alpine:3.11
# apk add openjdk11
# java -version
openjdk version "11.0.5" 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-alpine-r0)
OpenJDK 64-Bit Server VM (build 11.0.5+10-alpine-r0, mixed mode)如果您特别需要11.0.6,请改为安装edge/community存储库的最新openjdk11包:
apk add openjdk11 --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community
发布于 2021-07-21 02:49:00
从工作容器
FROM alpine:3.14
RUN apk update \
&& apk upgrade \
&& apk add ca-certificates \
&& update-ca-certificates \
&& apk add --update coreutils && rm -rf /var/cache/apk/* \
&& apk add --update openjdk11 tzdata curl unzip bash \
&& apk add --no-cache nss \
&& rm -rf /var/cache/apk/*https://stackoverflow.com/questions/60014845
复制相似问题