如何解决命令 `bin/sh` 返回一个非零代码:100
所以我试图在 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' returned a non-zero code: 100,Docker File Non-Zero Code 100 Error When Building 基本上我想要实现的是在容器中安装 java。最好是 java 13,但这个问题阻止我这样做。最后,重要的是要让您知道相同的命令适用于另一个容器。
解决方法
在安装 jdk 之前添加:
RUN mkdir -p /usr/share/man/man1/
这是 debian slim images 中的一个问题,此图像基于 buster-slim。或者,您可以尝试使用基于 Ubuntu (5.0-focal) 或 Alpine (5.0-alpine) 的 dotnet/runtime 映像之一。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。