基于 ubuntu 创建 minio docker 镜像

创建日期: 2025-05-19 16:27 | 作者: 风波 | 浏览次数: 27 | 分类: Docker

下载 minio 二进制文件

网页地址:https://min.io/open-source/download?platform=linux

如果选择 mac m1 芯片,那么下载地址是:

wget https://dl.min.io/server/minio/release/linux-arm64/minio_20250422221226.0.0_arm64.deb

docker-entrypoint.sh

#!/bin/sh
#

# If command starts with an option, prepend minio.
if [ "${1}" != "minio" ]; then
    if [ -n "${1}" ]; then
        set -- minio "$@"
    fi
fi

docker_switch_user() {
    if [ -n "${MINIO_USERNAME}" ] && [ -n "${MINIO_GROUPNAME}" ]; then
        if [ -n "${MINIO_UID}" ] && [ -n "${MINIO_GID}" ]; then
            chroot --userspec=${MINIO_UID}:${MINIO_GID} / "$@"
        else
            echo "${MINIO_USERNAME}:x:1000:1000:${MINIO_USERNAME}:/:/sbin/nologin" >>/etc/passwd
            echo "${MINIO_GROUPNAME}:x:1000" >>/etc/group
            chroot --userspec=${MINIO_USERNAME}:${MINIO_GROUPNAME} / "$@"
        fi
    else
        exec "$@"
    fi
}

## DEPRECATED and unsupported - switch to user if applicable.
docker_switch_user "$@"

Dockerfile 文件

FROM ubuntu:24.04 as builder

ARG DEBIAN_FRONTEND=noninteractive

COPY ./minio_20250422221226.0.0_arm64.deb /opt/

RUN apt install -y /opt/minio_20250422221226.0.0_arm64.deb 

FROM ubuntu:24.04

COPY --from=builder /usr/local/bin/minio /usr/bin/

COPY ./docker-entrypoint.sh /usr/bin/docker-entrypoint.sh

EXPOSE 9000
VOLUME ["/data"]

ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"]
CMD ["minio"]

打包使用的 docker-compose.yml 文件

services:
  minio:
    build:
      context: docker
      dockerfile: ./Dockerfile
    image: minio:RELEASE.2025-04-22T22-12-26Z

启动服务使用的 docker-compose.yml 文件

  minio:
    image: minio:RELEASE.2025-04-22T22-12-26Z
    environment:
      - MINIO_ROOT_USER=root
      - MINIO_ROOT_PASSWORD=123456
    volumes:
      - ./data/minio:/data
    ports:
      - "9000:9000"
      - "9001:9001"
    network_mode: bridge
    command:
      server /data --console-address ":9001"
27 浏览
11 爬虫
0 评论