Documentation

MinIO Object Storage for Linux

MinIO is an object storage solution that provides an Amazon Web Services S3-compatible API and supports all core S3 features. MinIO is built to deploy anywhere - public or private cloud, baremetal infrastructure, orchestrated environments, and edge infrastructure.

This site documents Operations, Administration, and Development of MinIO deployments on Linux platforms for the latest stable version of MinIO: RELEASE.2024-03-15T01-07-19Z.

MinIO is released under dual license GNU Affero General Public License v3.0 and MinIO Commercial License. Deployments registered through MinIO SUBNET use the commercial license and include access to 24/7 MinIO support.

You can get started exploring MinIO features using the MinIO Console and our play server at https://play.min.io. play is a public MinIO cluster running the latest stable MinIO server. Any file uploaded to play should be considered public and non-protected. For more about connecting to play, see MinIO Console play Login.

Quickstart: MinIO for Linux

This procedure deploys a Standalone MinIO server onto Linux for early development and evaluation of MinIO Object Storage and its S3-compatible API layer.

For instructions on deploying to production environments, see Deploy MinIO: Multi-Node Multi-Drive.

Prerequisites

  • Read, Write and Execute permissions on your local user folder (e.g. ~/minio).

  • Permission to install binaries to the system PATH (e.g. access to /usr/local/bin).

  • Familiarity with the Linux terminal or shell (Bash, ZSH, etc.).

  • A 64-bit Linux OS (e.g. RHEL 8, Ubuntu LTS releases).

Procedure

  1. Install the MinIO Server

    The following tabs provide examples of installing MinIO onto 64-bit Linux operating systems using RPM, DEB, or binary. The RPM and DEB packages automatically install MinIO to the necessary system paths and create a minio service for systemctl. MinIO strongly recommends using the RPM or DEB installation routes. To update deployments managed using systemctl, see Update systemctl-Managed MinIO Deployments.

    amd64 (Intel or AMD 64-bit processors)

    Use one of the following options to download the MinIO server installation file for a machine running Linux on an Intel or AMD 64-bit processor.

    Use the following commands to download the latest stable MinIO RPM and install it.

    wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20240315010719.0.0-1.x86_64.rpm -O minio.rpm
    sudo dnf install minio.rpm
    

    Use the following commands to download the latest stable MinIO DEB and install it:

    wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20240315010719.0.0_amd64.deb -O minio.deb
    sudo dpkg -i minio.deb
    

    Use the following commands to download the latest stable MinIO binary and install it to the system $PATH:

    wget https://dl.min.io/server/minio/release/linux-amd64/minio
    chmod +x minio
    sudo mv minio /usr/local/bin/
    
    arm64 (Apple M1/M2 or other ARM 64-bit processors)

    Use one of the following options to download the MinIO server installation file for a machine running Linux on an ARM 64-bit processor, such as the Apple M1 or M2.

    Use the following commands to download the latest stable MinIO RPM and install it.

    wget https://dl.min.io/server/minio/release/linux-arm64/archive/minio-20240315010719.0.0-1.aarch64.rpm -O minio.rpm
    sudo dnf install minio.rpm
    

    Use the following commands to download the latest stable MinIO DEB and install it:

    wget https://dl.min.io/server/minio/release/linux-arm64/archive/minio_20240315010719.0.0_arm64.deb -O minio.deb
    sudo dpkg -i minio.deb
    

    Use the following commands to download the latest stable MinIO binary and install it to the system $PATH:

    wget https://dl.min.io/server/minio/release/linux-arm64/minio
    chmod +x minio
    MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password ./minio server /mnt/data --console-address ":9001"
    
    Other Architectures

    MinIO also supports additional architectures:

    • ppc64le

    • s390x

    For instructions to download the binary, RPM, or DEB files for those architectures, see the MinIO download page.

  2. Launch the MinIO Server

    Run the following command from the system terminal or shell to start a local MinIO instance using the ~/minio folder. You can replace this path with another folder path on the local machine:

    mkdir ~/minio
    minio server ~/minio --console-address :9001
    

    The mkdir command creates the folder explicitly at the specified path.

    The minio server command starts the MinIO server. The path argument ~/minio identifies the folder in which the server operates.

    The minio server process prints its output to the system console, similar to the following:

    API: http://192.0.2.10:9000  http://127.0.0.1:9000
    RootUser: minioadmin
    RootPass: minioadmin
    
    Console: http://192.0.2.10:9001 http://127.0.0.1:9001
    RootUser: minioadmin
    RootPass: minioadmin
    
    Command-line: https://min.io/docs/minio/linux/reference/minio-mc.html
       $ mc alias set myminio http://192.0.2.10:9000 minioadmin minioadmin
    
    Documentation: https://min.io/docs/minio/linux/index.html
    
    WARNING: Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables.
    
  3. Connect Your Browser to the MinIO Server

    Open http://127.0.0.1:9000 in a web browser to access the MinIO Console. You can alternatively enter any of the network addresses specified as part of the server command output. For example, Console: http://192.0.2.10:9001 http://127.0.0.1:9001 in the example output indicates two possible addresses to use for connecting to the Console.

    While the port 9000 is used for connecting to the API, MinIO automatically redirects browser access to the MinIO Console.

    Log in to the Console with the RootUser and RootPass user credentials displayed in the output. These default to minioadmin | minioadmin.

    MinIO Console displaying login screen

    You can use the MinIO Console for general administration tasks like Identity and Access Management, Metrics and Log Monitoring, or Server Configuration. Each MinIO server includes its own embedded MinIO Console.

    MinIO Console displaying bucket start screen

    For more information, see the MinIO Console documentation.

  4. (Optional) Install the MinIO Client

    The MinIO Client allows you to work with your MinIO server from the commandline.

    Download the mc client and install it to a location on your system PATH such as /usr/local/bin. You can alternatively run the binary from the download location.

    wget https://dl.min.io/client/mc/release/linux-amd64/mc
    chmod +x mc
    sudo mv mc /usr/local/bin/mc
    

    Use mc alias set to create a new alias associated to your local deployment. You can run mc commands against this alias:

    mc alias set local http://127.0.0.1:9000 minioadmin minioadmin
    mc admin info local
    

    The mc alias set takes four arguments:

    • The name of the alias

    • The hostname or IP address and port of the MinIO server

    • The Access Key for a MinIO user

    • The Secret Key for a MinIO user

    The example above uses the root user.

Next Steps