How to Install Minio on Void Linux

Introduction

Minio is a self-hosted, open-source cloud storage server that is Amazon S3 compatible. It is designed to be a lightweight, high-performance alternative to traditional cloud storage solutions. In this tutorial, we'll show you how to install Minio on Void Linux.

Prerequisites

Before you begin, make sure you have the following:

Step 1 - Update System

First, let's update the system packages to ensure that we have the latest version.

sudo xbps-install -Syu

Step 2 - Download Minio

Next, we'll download the latest version of Minio from the official website using the curl command.

curl -LO https://dl.min.io/server/minio/release/linux-amd64/minio

Step 3 - Make Minio Executable

After downloading Minio, we need to make it executable. Use the following command to make the minio binary executable:

sudo chmod +x minio

Step 4 - Create Minio User

The Minio server runs under a user’s context. Therefore, it is a good practice to create a new system user specifically for running Minio.

sudo useradd -r -s /bin/false minio-user

Step 5 - Create Directories

Create the necessary directories for storing data and configuration files.

sudo mkdir -p /var/lib/minio/
sudo chown -R minio-user:minio-user /var/lib/minio/
sudo mkdir -p /etc/minio/

Step 6 - Install Minio Service

Create a systemd service file minio.service at /etc/systemd/system/ with the following content.

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

[Service]
User=minio-user
Group=minio-user
EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS
ProtectSystem=full
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
NoNewPrivileges=true
Restart=on-failure
RestartSec=5s
TimeoutStopSec=30s

[Install]
WantedBy=multi-user.target

Save the file, and reload systemd configurations.

sudo systemctl daemon-reload

Step 7 - Start Minio Service

Start the Minio service using the following command.

sudo systemctl enable --now minio.service

Validate the status of the Minio service.

sudo systemctl status minio.service
sudo journalctl -u minio.service -n 50

Conclusion

Congratulations! You have successfully installed Minio on your Void Linux system. Minio is now launched and using port 9000 as an S3 compatible cloud storage server. You can now access the Minio server by visiting the server IP on port 9000 using a web browser or a compatible client.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!