FROM openeuler/openeuler:24.03 RUN dnf update -y && \ dnf clean all && \ rm -rf /var/cache/dnf/* # 根据平台执行不同的安装步骤 RUN architecture=$(uname -m); \ if [ "$architecture" = "aarch64" ]; then \ echo "install ARM64 node_exporter"; \ curl -fsSL https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-arm64.tar.gz | tar -xz -C /usr/local/bin && \ mv /usr/local/bin/node_exporter-*/node_exporter /usr/local/bin/node_exporter && \ rm /usr/local/bin/node_exporter-* -rf && \ chmod +x /usr/local/bin/node_exporter; \ elif [ "$architecture" = "x86_64" ]; then \ echo "install x86_64 node_exporter"; \ curl -fsSL https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz | tar -xz -C /usr/local/bin && \ mv /usr/local/bin/node_exporter-*/node_exporter /usr/local/bin/node_exporter && \ rm /usr/local/bin/node_exporter-* -rf && \ chmod +x /usr/local/bin/node_exporter; \ else \ echo "Platform [$architecture] not supported"; \ exit 1; \ fi RUN mkdir /host CMD ["node_exporter","--path.rootfs=/host","--web.listen-address=0.0.0.0:9100"]