Hostomy Blog

How to Install MinIO on Debian

Feb 23, 2025

By Rahul Mukati

Rahul Mukati
How to Install MinIO on Debian

Introduction

MinIO is an open-source, high-performance, distributed object storage server compatible with Amazon S3 APIs. It's designed for large-scale data infrastructures, making it ideal for cloud-native applications. This guide will walk you through the steps to install MinIO on a Debian server.

Prerequisites

Before you begin, ensure you have:

  • A Debian-based server (preferably Debian 11)
  • Root or sudo user access
  • A stable internet connection

For optimal performance and scalability, consider deploying MinIO on Hostomy's cloud servers. Hostomy offers high-performance cloud solutions with features like NVMe storage and 1 Gbps network ports. Learn more at Hostomy Cloud Servers.

Step 1: Update Your System

Begin by updating your system's package index and upgrading existing packages:

sudo apt update && sudo apt upgrade -y

Step 2: Install MinIO Server

  1. Download the MinIO Binary:
  2. Fetch the latest MinIO server binary:
wget https://dl.min.io/server/minio/release/linux-amd64/minio
  1. Install the Binary:
  2. Make the binary executable and move it to /usr/local/bin:
chmod +x minio
sudo mv minio /usr/local/bin/

Step 3: Create a Dedicated User for MinIO

For security purposes, create a dedicated user to run the MinIO service:

sudo useradd -r minio-user -s /sbin/nologin

Step 4: Configure MinIO

  1. Create Directories for MinIO Data and Configuration:
sudo mkdir /usr/local/share/minio
sudo mkdir /etc/minio
  1. Set Permissions:
  2. Assign ownership of these directories to the minio-user:
sudo chown minio-user:minio-user /usr/local/share/minio
sudo chown minio-user:minio-user /etc/minio

Step 5: Create a Systemd Service File

To manage MinIO as a service, create a systemd service file:

sudo nano /etc/systemd/system/minio.service

Add the following content:

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target

[Service]
User=minio-user
Group=minio-user
ExecStart=/usr/local/bin/minio server /usr/local/share/minio
Restart=always
RestartSec=5
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

Save and exit the editor.

Step 6: Start and Enable MinIO Service

  1. Reload Systemd to Recognize MinIO Service:
sudo systemctl daemon-reload
  1. Start the MinIO Service:
sudo systemctl start minio
  1. Enable MinIO to Start on Boot:
sudo systemctl enable minio

Step 7: Configure Firewall

If you have a firewall enabled, allow traffic on MinIO's default port (9000):

sudo ufw allow 9000

Step 8: Access MinIO Web Interface

MinIO's web interface is accessible at http://your-server-ip:9000. Upon first access, you'll be prompted to enter the Access Key and Secret Key. By default, these are set to minioadmin for both. For enhanced security, it's crucial to change these credentials immediately.

Conclusion

You've successfully installed and configured MinIO on your Debian server. This setup provides a robust, S3-compatible object storage solution suitable for various applications. For scalable and high-performance hosting solutions, consider deploying MinIO on Hostomy's cloud servers.