knowledge/technology/applications/web/Minio.md
2023-12-04 11:02:23 +01:00

2 KiB

obj website repo
application https://min.io https://github.com/minio/minio

Minio

MinIO is an open-source, high-performance, distributed object storage system. Designed for cloud-native and containerized applications, MinIO allows users to build scalable, fault-tolerant, and secure object storage infrastructure. It is compatible with Amazon S3 APIs, making it easy to integrate with existing S3 applications and tools.

Features

  1. Amazon S3 Compatibility:
    MinIO supports the S3 API, allowing users to seamlessly integrate MinIO with applications and tools designed for Amazon S3.
  2. Scalability:
    MinIO is designed to scale horizontally, allowing users to add nodes to the cluster as storage requirements grow. This scalability makes it suitable for both small-scale deployments and large-scale enterprise use.
  3. High Performance:
    MinIO leverages a distributed architecture and erasure coding to achieve high performance, making it suitable for use cases with demanding throughput and low-latency requirements.
  4. Data Protection and Erasure Coding:
    MinIO provides data protection through erasure coding, which breaks data into smaller fragments and distributes them across multiple nodes. This ensures data integrity and fault tolerance.
  5. Security Features:
    MinIO includes features such as server-side encryption, access control policies, and integration with identity providers for secure data storage.
  6. Event-Driven Architecture:
    MinIO supports event notifications, allowing users to trigger actions or workflows in response to events such as object creation or deletion.

Docker Compose

version: '3.9'
services:
    minio:
        command: 'server /data --console-address ":9090"'
        image: quay.io/minio/minio
        environment:
            - MINIO_ROOT_PASSWORD=password
            - MINIO_ROOT_USER=user
            - MINIO_SERVER_URL=https://domain.com
        volumes:
            - './data:/data'
        ports:
            - '9090:9090'
            - '9080:9000'
        restart: unless-stopped