GithubHelp home page GithubHelp logo

specfile-minio's Introduction

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:

specfile-minio's People

Contributors

madrisan avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.