FROM openeuler/openeuler:24.03 RUN dnf update -y && \ dnf install -y supervisor && \ dnf clean all && \ rm -rf /var/cache/dnf/* RUN architecture=$(uname -m); \ if [ "$architecture" = "aarch64" ]; then \ echo "install ARM64 prometheus"; \ curl -fsSL --retry 3 https://github.com/prometheus/prometheus/releases/download/v2.54.0/prometheus-2.54.0.linux-arm64.tar.gz | tar -xz -C /usr/local/bin && \ mv /usr/local/bin/prometheus-*/prometheus /usr/local/bin/prometheus && \ rm /usr/local/bin/prometheus-* -rf && \ chmod +x /usr/local/bin/prometheus; \ elif [ "$architecture" = "x86_64" ]; then \ echo "install x86_64 prometheus"; \ curl -fsSL --retry 3 https://github.com/prometheus/prometheus/releases/download/v2.54.0/prometheus-2.54.0.linux-amd64.tar.gz | tar -xz -C /usr/local/bin && \ mv /usr/local/bin/prometheus-*/prometheus /usr/local/bin/prometheus && \ rm /usr/local/bin/prometheus-* -rf && \ chmod +x /usr/local/bin/prometheus; \ else \ echo "platform [$architecture] not supported"; \ exit 1; \ fi RUN architecture=$(uname -m); \ if [ "$architecture" = "aarch64" ]; then \ echo "install ARM64 confd"; \ curl -fsSL --retry 3 https://github.com/abtreece/confd/releases/download/v0.20.0/confd-v0.20.0-linux-arm64.tar.gz | tar -xz -C /usr/local/bin && \ chmod +x /usr/local/bin/confd; \ elif [ "$architecture" = "x86_64" ]; then \ echo "install x86_64 confd"; \ curl -fsSL --retry 3 https://github.com/abtreece/confd/releases/download/v0.20.0/confd-v0.20.0-linux-amd64.tar.gz | tar -xz -C /usr/local/bin && \ chmod +x /usr/local/bin/confd; \ else \ echo "platform [$architecture] not supported"; \ exit 1; \ fi RUN mkdir /etc/prometheus/ COPY ./confd/ /etc/confd/ COPY prometheus.yml /etc/prometheus/prometheus.yml COPY ./supervisord/ /etc/supervisord/ CMD [ "supervisord", "-c", "/etc/supervisord/supervisord.conf" ]