You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在container-registry.oracle.com/graalvm镜像中安装软件?该镜像使用何种包管理器?

问题解答

1. 该镜像的包管理器情况

你使用的container-registry.oracle.com/graalvm/native-image:21镜像属于无预装包管理器的极简镜像。这类镜像仅包含运行GraalVM Native Image所需的核心组件,为了最小化体积,没有内置yum、dnf、apt-get这类常见包管理工具。

2. 在该镜像中安装软件的方法

由于没有包管理器,你可以通过以下几种方式实现软件安装:

方法一:下载预编译二进制包手动部署

以安装Maven为例,直接下载官方预编译的二进制包,解压后配置路径即可:

FROM --platform=linux/aarch64 container-registry.oracle.com/graalvm/native-image:21

# 下载、解压并配置Maven
RUN wget https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz \
    && tar -xzf apache-maven-3.9.6-bin.tar.gz \
    && mv apache-maven-3.9.6 /opt/maven \
    && rm apache-maven-3.9.6-bin.tar.gz \
    && ln -s /opt/maven/bin/mvn /usr/local/bin/mvn

# 验证安装
RUN echo " --- Maven version:"; mvn --version; echo "$M2_HOME" ; echo

方法二:换用带包管理器的基础镜像构建

如果需要频繁安装各类软件,更高效的做法是基于带有包管理器的Oracle Linux镜像,先安装GraalVM Native Image,再进行后续操作:

# 基于Oracle Linux 8镜像(自带dnf包管理器)
FROM --platform=linux/aarch64 oraclelinux:8

# 安装GraalVM Native Image
RUN dnf install -y graalvm21-native-image \
    && alternatives --set java graalvm21-native-image \
    && alternatives --set javac graalvm21-native-image

# 安装基础工具
RUN dnf install -y wget unzip tar gzip

# 安装Maven
RUN wget https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz \
    && tar -xzf apache-maven-3.9.6-bin.tar.gz \
    && mv apache-maven-3.9.6 /opt/maven \
    && rm apache-maven-3.9.6-bin.tar.gz \
    && ln -s /opt/maven/bin/mvn /usr/local/bin/mvn

# 验证环境
RUN echo " --- Java version:"; java --version; echo "$JAVA_HOME" ; echo
RUN echo " --- Graal version:"; native-image --version; echo "$GRAALVM_HOME" ; echo
RUN echo " --- Maven version:"; mvn --version; echo "$M2_HOME" ; echo

方法三:复制本地预编译二进制文件

若你已有适配aarch64架构的预编译软件二进制文件,可直接通过COPY指令从本地复制到镜像中并配置路径:

FROM --platform=linux/aarch64 container-registry.oracle.com/graalvm/native-image:21

# 从本地复制已解压的Maven目录
COPY ./apache-maven-3.9.6 /opt/maven
RUN ln -s /opt/maven/bin/mvn /usr/local/bin/mvn

# 验证安装
RUN mvn --version

内容的提问来源于stack exchange,提问作者Pwnstar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 15:03:18