我试图在一个基于Debian的docker镜像(mcr.microsoft.comdotnetcoresdk:3.1-buster)中安装java运行时。根据不同的教程,应该可以通过运行
RUN apt update
RUN apt-get install openjdk-11-jre
后一个命令的结果是
E: Unable to locate package openjdk-11-jre
然而,根据 https:/packages.debian.orgbusteropenjdk-11-jre。 包确实存在。我到底做错了什么?
不确定你是从哪个镜像中拉取的。我用的是slim。Docker文件.
from debian:buster-slim
ENV DEBIAN_FRONTEND=noninteractive
RUN mkdir -p /usr/share/man/man1 /usr/share/man/man2
RUN apt-get update && \
apt-get install -y --no-install-recommends \
openjdk-11-jre
# Prints installed java version, just for checking
RUN java --version
注: 如果你不运行 mkdir -p /usr/share/man/man1 /usr/share/man/man2
你会遇到ca-certificate、openjdk-11-jre-headless等的依赖问题。我一直在使用社区提供的这个修复方法,还没有真正检查过永久修复。