所以我试图在dockerfile中安装openjdk,但我遇到了一些问题。它始终会显示以下错误消息: Sub-process /usr/bin/dpkg returned an error code (1)
然后在下面 The command bin/sh returned a non-zero code: 100
. 这是未能执行的命令。目前在ubuntu 20.04虚拟机上
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build-env
WORKDIR /app
# Copy csproj and restore as distinct layers
COPY Folder/*.csproj ./
RUN dotnet restore
# Copy everything else and build
COPY . ./
RUN dotnet build -c Release -o out
# Build runtime image
FROM mcr.microsoft.com/dotnet/runtime:5.0
# Install OpenJDK-14
RUN apt-get update && \
apt-get install -y default-jdk && \
apt-get install -y ant && \
apt-get clean;
# Fix certificate issues
RUN apt-get update && \
apt-get install ca-certificates-java && \
apt-get clean && \
update-ca-certificates -f;
# Setup JAVA_HOME -- useful for docker commandline
ENV JAVA_HOME /usr/lib/jvm/default/
RUN export JAVA_HOME
RUN apt-get install -y supervisor # Installing supervisord
ADD supervisord.conf /etc/supervisor/conf.d/supervisord.conf
WORKDIR /app
COPY Folder/Lavalink/* ./
COPY --from=build-env /app/out .
# ENTRYPOINT ["dotnet", "Application.dll"]
ENTRYPOINT ["/usr/bin/supervisord"]
这是主管
[supervisord]
nodaemon=true
[program:folder]
command=dotnet /app/Application.dll
[program:lavalink]
command=java -jar /app/Lavalink.jar
这是一个用5.0编写的visual studio项目,其中包含一个需要执行的.jar文件。这些似乎没有帮助:apt get update“在构建时返回了一个非零代码:100,docker文件非零代码100错误,我试图实现的基本目标是在容器中安装java。最好是Java13,但这个问题阻止我这么做。最后,让您知道相同的命令在另一个容器上工作是很重要的。
1条答案
按热度按时间flvlnr441#
在安装jdk之前添加以下内容:
这是debian slim图像中的一个问题,该图像基于buster slim。或者,您可以尝试使用基于ubuntu(5.0-focal)或alpine(5.0-alpine)的dotnet/runtime映像之一。