我有一个docker文件,我在其中执行wget来复制图像中的某些内容。但是生成失败,导致"未找到wget命令"。当我在谷歌上搜索时,我发现了在下面安装wget的建议
RUN apt update && apt upgrade
RUN apt install wget
Docker文件:
FROM openjdk:17
LABEL maintainer="app"
ARG uname
ARG pwd
RUN useradd -ms /bin/bash -u 1000 user1
COPY . /app
WORKDIR /app
RUN ./gradlew build -PmavenUsername=$uname -PmavenPassword=$pwd
ARG YOURKIT_VERSION=2021.11
ARG POLARIS_YK_DIR=YourKit-JavaProfiler-2019.8
RUN wget https://www.yourkit.com/download/docker/YourKit-JavaProfiler-${YOURKIT_VERSION}-docker.zip --no-check-certificate -P /tmp/ &&
unzip /tmp/YourKit-JavaProfiler-${YOURKIT_VERSION}-docker.zip -d /usr/local &&
mv /usr/local/YourKit-JavaProfiler-${YOURKIT_VERSION} /usr/local/$POLARIS_YK_DIR &&
rm /tmp/YourKit-JavaProfiler-${YOURKIT_VERSION}-docker.zip
EXPOSE 10001
EXPOSE 8080
EXPOSE 5005
USER 1000
ENTRYPOINT ["sh", "/docker_entrypoint.sh"]
在这样做的时候,我得到了错误应用程序找不到。有人能提出任何解决方案吗。
您使用的openjdk映像基于Oracle Linux,它使用microdnf而不是apt作为包管理器。
要安装wget(并解压缩您也需要的(,您可以将其添加到Dockerfile:
RUN microdnf update
&& microdnf install --nodocs wget unzip
&& microdnf clean all
&& rm -rf /var/cache/yum
这些命令在安装后清理包缓存,以使映像大小尽可能小。