Docker: Openjdk:14 基于 RHEL 的映像,无法安装 yum/wget/netstat
Docker: Openjdk:14 RHEL based imaged, cannot install yum/wget/netstat
在我的 dockerfile 中,我需要一个在 OpenJDK 上工作的 Maven 构建器(至少 3.6)(需要 J14)。
FROM maven:3.6.3-openjdk-14 as builder
问题很简单:我需要 netstat
命令,因为它在多个脚本中使用。 OpenJDK 官方镜像是基于 RHEL 的,所以它没有安装任何这个包。
我尝试通过 wget
命令下载它或 yum,但正如您所猜到的,它没有安装。我觉得被困住了,因为看起来你不能在上面安装任何包。
该图像实际上是基于 Oracle
$ podman run -it maven:3.6.3-openjdk-14 /bin/bash -c 'cat /etc/os-release'
NAME="Oracle Linux Server"
VERSION="8.2"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="8.2"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Oracle Linux Server 8.2"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:8:2:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8"
ORACLE_BUGZILLA_PRODUCT_VERSION=8.2
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=8.2
这实际上是一个“苗条”变体,其中 dnf
或 yum
未安装,但 microdnf
已安装。尝试使用它:
RUN microdnf install /usr/bin/netstat
或者
RUN microdnf install net-tools
在我的 dockerfile 中,我需要一个在 OpenJDK 上工作的 Maven 构建器(至少 3.6)(需要 J14)。
FROM maven:3.6.3-openjdk-14 as builder
问题很简单:我需要 netstat
命令,因为它在多个脚本中使用。 OpenJDK 官方镜像是基于 RHEL 的,所以它没有安装任何这个包。
我尝试通过 wget
命令下载它或 yum,但正如您所猜到的,它没有安装。我觉得被困住了,因为看起来你不能在上面安装任何包。
该图像实际上是基于 Oracle
$ podman run -it maven:3.6.3-openjdk-14 /bin/bash -c 'cat /etc/os-release'
NAME="Oracle Linux Server"
VERSION="8.2"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="8.2"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Oracle Linux Server 8.2"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:8:2:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8"
ORACLE_BUGZILLA_PRODUCT_VERSION=8.2
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=8.2
这实际上是一个“苗条”变体,其中 dnf
或 yum
未安装,但 microdnf
已安装。尝试使用它:
RUN microdnf install /usr/bin/netstat
或者
RUN microdnf install net-tools