Published 2023/01/05 - Updated 2023/01/07 - Written by Nathaniel Walser

How to deploy MinIO with Docker Compose

Minio is an S3 compatible object store. It is designed to store blob data. It has features like data retention policies, storage tiering, encryption and compression, just to name a few.

This setup is tailored for development purposes only. For production it needs to be extended quite a bit.

Install MinIO

Create a docker-compose.yml file in an empty directory. Copy the following content into the newly created file.

version: "3.4"

services:
  minio:
    image: quay.io/minio/minio
    command: server /data --console-address ":9001"
    environment:
      - MINIO_ROOT_USER=minioadmin
      - MINIO_ROOT_PASSWORD=minioadmin
    volumes:
      - minio_data:/data
    ports:
      - 9000:9000
      - 9001:9001

volumes:
  minio_data:

Run docker-compose up in your terminal inside this folder to download and start the MinIO container.

# CLI
docker-compose up

Get started with the MinIO Client

Run the following command for your desired programming language to install the needed dependencies.

# CLI
dotnet add package Minio

# Nuget PM
Install-Package Minio

For further guidance on how to use the client you can continue at the official MinIO docs.

Get started with the Admin UI

After installation, your MinIO admin ui is available under port 9001. You can access it with username minioadmin and password minioadmin under http://host.docker.internal:9001.

More Templates