ARG BUILD_FROM FROM ${BUILD_FROM} # Set working directory WORKDIR /root # Install glibc compatibility on Alpine RUN apk add --no-cache \ bash \ curl \ su-exec \ libc6-compat \ openjdk21-jdk # Create opensearch user RUN addgroup -g 1000 opensearch && \ adduser -u 1000 -G opensearch -h /usr/share/opensearch -D opensearch # Download and install OpenSearch 3.2.0 for aarch64 RUN curl -L https://artifacts.opensearch.org/releases/bundle/opensearch/3.2.0/opensearch-3.2.0-linux-arm64.tar.gz -o opensearch.tar.gz && \ tar -xzf opensearch.tar.gz && \ mv opensearch-3.2.0/* /usr/share/opensearch && \ rm -rf opensearch.tar.gz /usr/share/opensearch/jdk && \ ln -s /usr/lib/jvm/java-21-openjdk /usr/share/opensearch/jdk # Create directories and set permissions RUN mkdir -p /var/lib/opensearch /var/log/opensearch /usr/share/opensearch/plugins && \ chown -R opensearch:opensearch /usr/share/opensearch /var/lib/opensearch /var/log/opensearch # Copy configuration and script COPY rootfs / # Set permissions RUN chmod +x /etc/cont-init.d/* /etc/services.d/*/* WORKDIR /usr/share/opensearch