Documentation

MinIO High Performance Object Storage

MinIO is a Kubernetes-native S3-compatible object storage solution designed to deploy wherever your applications are - on premises, in the private cloud, in the public cloud, and edge infrastructure. MinIO is designed to support modern application workload patterns where high performance distributed computing meets petabyte-scale storage requirements.

MinIO is available under two server editions, each with their own distinct license:

MinIO Object Store (MinIO)

MinIO Object Store (MinIO) is licensed under GNU Affero General Public License v3.0.

MinIO features are available to the community as a stream of active development.

MinIO is community-focused, with best-effort support through the MinIO Community Slack Channel and the MinIO Github repository.

MinIO Enterprise Object Store (MinEOS)

MinIO Enterprise Object Store (MinEOS) is licensed under the MinIO Commercial License.

MinEOS is available to MinIO SUBNET Enterprise-Lite and Enterprise-Plus customers and includes exclusive support for the Enterprise Object Store feature suite.

MinEOS include MinIO SUBNET access for 24/7 L1 support from MinIO Engineering, with 4 or 1 hour SLAs available based on deployment size.

This site documents Operations, Administration, and Development of MinIO deployments on supported platforms for RELEASE.2024-10-13T13-34-11Z. MinIO Enterprise Object Storage (MinEOS) deployments can use this documentation as a baseline of features available in a current or upcoming release.

MinIO officially supports the following platforms:

On-Prem and Private Cloud Kubernetes

Public Cloud Kubernetes

On-Prem, Private Cloud, and Public Cloud Baremetal

Quickstart

MinIO maintains a sandbox instance of the community server at https://play.min.io. You can use this instance for experimenting or evaluating the MinIO product on your local system.

Follow the mc CLI installation guide to install the utility on your local host.

mc includes a pre-configured play alias for connecting to the sandbox. For example, you can use the following commands to create a bucket and copy objects to play:

mc mb play/mynewbucket

mc cp /path/to/file play/mynewbucket/prefix/filename.extension

mc stat play/mynewbucket/prefix/filename.extension

Important

MinIO’s Play sandbox is an ephemeral public-facing deployment with well-known access credentials. Any private, confidential, internal, secured, or other important data uploaded to Play is effectively made public. Exercise caution and discretion in any data you upload to Play.

  1. Download the MinIO Server Process for your Operating System

    Follow the instructions on the MinIO Download Page <https://min.io/downloads?ref=docs> for your operating system to download and install the minio server process.

  2. Create a folder for use with MinIO

    For example, create a folder ~/minio in Linux/MacOS or C:\minio in Windows.

  3. Start the MinIO Server

    Run the minio server specifying the path to the directory and the --console-address parameter to set a static console listen path:

    minio server ~/minio --console-address :9001
    # For windows, use minio.exe server ~/minio --console-address :9001`
    

    The output includes connection instructions for both mc and connecting to the Console using your browser.

Download minio-dev.yaml to your host machine:

curl https://raw.githubusercontent.com/minio/docs/master/source/extra/examples/minio-dev.yaml -O

The file describes two Kubernetes resources:

  • A new namespace minio-dev, and

  • A MinIO pod using a drive or volume on the Worker Node for serving data

Use kubectl port-forward to access the Pod, or create a service for the pod for which you can configure Ingress, Load Balancing, or similar Kubernetes-level networking.