mirror of
https://github.com/minio/minio
synced 2024-09-05 16:26:28 +00:00
![Harshavardhana](/assets/img/avatar_default.png)
`mc` will currenly fail inside MinIO pod without `--config-dir` option, instead use the ENV to avoid passing flags.
55 lines
2.4 KiB
Docker
55 lines
2.4 KiB
Docker
FROM registry.access.redhat.com/ubi9/ubi-minimal:9.2
|
|
|
|
ARG TARGETARCH
|
|
|
|
ARG RELEASE
|
|
|
|
LABEL name="MinIO" \
|
|
vendor="MinIO Inc <dev@min.io>" \
|
|
maintainer="MinIO Inc <dev@min.io>" \
|
|
version="${RELEASE}" \
|
|
release="${RELEASE}" \
|
|
summary="MinIO is a High Performance Object Storage, API compatible with Amazon S3 cloud storage service." \
|
|
description="MinIO object storage is fundamentally different. Designed for performance and the S3 API, it is 100% open-source. MinIO is ideal for large, private cloud environments with stringent security requirements and delivers mission-critical availability across a diverse range of workloads."
|
|
|
|
ENV MINIO_ACCESS_KEY_FILE=access_key \
|
|
MINIO_SECRET_KEY_FILE=secret_key \
|
|
MINIO_ROOT_USER_FILE=access_key \
|
|
MINIO_ROOT_PASSWORD_FILE=secret_key \
|
|
MINIO_KMS_SECRET_KEY_FILE=kms_master_key \
|
|
MINIO_UPDATE_MINISIGN_PUBKEY="RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav" \
|
|
MINIO_CONFIG_ENV_FILE=config.env \
|
|
MC_CONFIG_DIR=/tmp/.mc \
|
|
PATH=/opt/bin:$PATH
|
|
|
|
COPY dockerscripts/verify-minio.sh /usr/bin/verify-minio.sh
|
|
COPY dockerscripts/docker-entrypoint.sh /usr/bin/docker-entrypoint.sh
|
|
COPY CREDITS /licenses/CREDITS
|
|
COPY LICENSE /licenses/LICENSE
|
|
|
|
RUN \
|
|
microdnf clean all && \
|
|
microdnf update --nodocs && \
|
|
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && \
|
|
microdnf install curl ca-certificates shadow-utils util-linux gzip lsof tar net-tools iproute iputils jq minisign --nodocs && \
|
|
mkdir -p /opt/bin && chmod -R 777 /opt/bin && \
|
|
curl -s -q https://dl.min.io/server/minio/release/linux-${TARGETARCH}/archive/minio.${RELEASE} -o /opt/bin/minio && \
|
|
curl -s -q https://dl.min.io/server/minio/release/linux-${TARGETARCH}/archive/minio.${RELEASE}.sha256sum -o /opt/bin/minio.sha256sum && \
|
|
curl -s -q https://dl.min.io/server/minio/release/linux-${TARGETARCH}/archive/minio.${RELEASE}.minisig -o /opt/bin/minio.minisig && \
|
|
curl -s -q https://dl.min.io/client/mc/release/linux-${TARGETARCH}/mc -o /opt/bin/mc && \
|
|
microdnf clean all && \
|
|
chmod +x /opt/bin/minio && \
|
|
chmod +x /opt/bin/mc && \
|
|
chmod +x /usr/bin/docker-entrypoint.sh && \
|
|
chmod +x /usr/bin/verify-minio.sh && \
|
|
/usr/bin/verify-minio.sh && \
|
|
microdnf clean all
|
|
|
|
EXPOSE 9000
|
|
|
|
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"]
|
|
|
|
VOLUME ["/data"]
|
|
|
|
CMD ["minio"]
|