Skip to content

madrisan/specfile-minio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Specfile for MinIO server

Release Status License

MinIO

MinIO is a open source, S3 compatible, enterprise hardened and high performance distributed object storage system.

This repository contains the specfiles that you can use to build MinIO server and client from the sources.

Usage

Pre-Requiments

sudo dnf install -y rpm-build golang git

Note that git 2.x is required (tested with version 2.25.1 on Fedora 31 and with git provided by the WANDisco's CentOS repository on CentOS7, see stackoverflow).

Build instructions

MinIO server

mkdir -p ~/rpmbuild/{SPECS,SOURCES}

for f in minio.conf minio.service; do
  curl -# https://raw.githubusercontent.com/madrisan/specfile-minio/master/$f \
    -o ~/rpmbuild/SOURCES/$f
done
curl -# https://raw.githubusercontent.com/madrisan/specfile-minio/master/minio.spec \
    -o ~/rpmbuild/SPECS/minio.spec

curl -# -L https://github.com/minio/minio/archive/RELEASE.2020-03-14T02-21-58Z.tar.gz \
    -o ~/rpmbuild/SOURCES/RELEASE.2020-03-14T02-21-58Z.tar.gz

rpmbuild -ba ~/rpmbuild/SPECS/minio.spec

Minio client (minio-mc)

mkdir -p ~/rpmbuild/{SPECS,SOURCES}

curl -# https://raw.githubusercontent.com/madrisan/specfile-minio/master/mc.spec \
    -o ~/rpmbuild/SPECS/minio-mc.spec

curl -# -L https://github.com/minio/minio/archive/RELEASE.2020-03-14T01-23-37Z.tar.gz \
    -o ~/rpmbuild/SOURCES/RELEASE.2020-03-14T01-23-37Z.tar.gz

rpmbuild -ba ~/rpmbuild/SPECS/minio-mc.spec

Note that the binary has been renamed from mc to minio-mc to avoid a conflict name with the Midnight Commander binary.

Installation

The resulting .rpm packages can be installed with rpm of dnf.

Before starting the systemd service minio.service you need to customize the configuration file /etc/sysconfig/minio. The volumes managed by MinIO must be configured in the variable MINIO_VOLUMES. You can optionally pass some extra options at service startup by modifying the variable MINIO_OPTIONS.

To improve the security you should also create the file /etc/systemd/system/minio.service.d/environment.confowned by root, with a file mode 0640, declaring the following two secrets:

[Service]
Environment=MINIO_ACCESS_KEY=ADD_A_KEY_HERE
Environment=MINIO_SECRET_KEY=ADD_A_SECRET_HERE

Here's a simple way to generate a random character sequence:

cat /dev/urandom | tr -dc '0-9a-zA-Z-._' | head -c 24; echo

Security

See the official documentation pages:

Releases

No releases published

Packages