37 lines
1.1 KiB
Docker
37 lines
1.1 KiB
Docker
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 |