Skip to main content

Install Minio S3 Storage Server on Debian/Ubuntu

Download binary from Github

https://github.com/minio/minio

mkdir /opt/minio_binary
cd /opt/minio_binary
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /data

Create user minio

# If on unpriviledged Proxmox LXC
adduser minio --uid 1000
# Otherwise
adduser minio --uid 101000

If on unpriviledged Proxmox LXC, set permissions on host for minio dataset:

chown 101000:101000 /hddhousing/minio

Create self signed certificate and show fingerprint

Download certgen https://github.com/minio/certgen

cd /opt/minio_binary
wget https://github.com/minio/certgen/releases/latest/download/certgen-linux-amd64
./certgen-linux-amd64 -host "192.168.0.24" # change ip as needed
mv private.key /home/minio/.minio/certs/
mv public.crt /home/minio/.minio/certs/
chown minio:minio /home/minio/.minio/certs/*
cat /home/minio/.minio/certs/public.crt | openssl x509 -fingerprint -sha256 -noout
# sha256 Fingerprint=EC:F9:1C:A3:8D:84:51:9F:C6:0A:ED:CB:C0:22:3F:8C:94:44:1F:89:21:8F:54:80:40:65:EE:6E:AB:11:30:5F

Create systemd service

nano /etc/systemd/system/minio.service

With content:

[Unit]
Description=Minio HDD-Housing
After=network.target

[Service]
Environment="MINIO_ROOT_USER=vfgergreadgfg"
Environment="MINIO_ROOT_PASSWORD=dfhrththwwgfsdadfrergetgtrhfdsb"
User=minio
ExecStart=/opt/minio_binary/minio server --anonymous /hddhousingpool

[Install]
WantedBy=multi-user.target

Reload systemd and start minio

systemctl daemon-reload
systemctl enable --now minio.service
systemctl status minio.service