MinIO S3

The following instructions are for ОС Ubuntu Linux 20.04.

начало внимание

In this article, we show an example with elma365vhost as the virtual host name, elma365user as the user, and SecretPassword as the password.
When setting up MinIO, follow your company’s security policies.

конец внимание

Install MinIO

  1. Download the binary file of the MinIO server from the official website:

sudo wget

  1. Make the file executable:

sudo chmod +x minio

  1. Move the file to /usr/local/bin, as the launch script will be searching for it in this directory:

sudo mv minio /usr/local/bin

  1. Create a new user:

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

  1. Make minio-user the owner of the file:

sudo chown minio-user:minio-user /usr/local/bin/minio

  1. Create a directory where MinIO will store files:

sudo mkdir /usr/local/share/minio

  1. Make minio-user the owner of this directory:

sudo chown minio-user:minio-user /usr/local/share/minio

  1. Create a directory to store MinIO configuration files:

sudo mkdir /etc/minio

  1. Make minio-user the owner of the directory:

sudo chown minio-user:minio-user /etc/minio

  1. Using a text editor, create an environment file that can be used to change the default settings:

sudo nano /etc/default/minio

  1. Add the following variables to the file:

MINIO_REGION = "us-east-1"
MINIO_OPTS="-C /etc/minio --console-address :9001 --address :9000"


  • MINIO_ROOT_USER sets the key you will use to access the user interface of the MinIO browser.
  • MINIO_ROOT_PASSWORD sets the private key you will use to enter your credentials in the MinIO interface.
  • MINIO_VOLUMES determines the directory in which files will be stored.
  • MINIO_OPTS determines where and how the server will serve data (in this example, the MinIO server can be accessed from any external address).
  1. Save and close the file.

Create a systemd service for MinIO

  1. Download the official file of the MinIO service:

sudo curl -O

  1. Check the contents of the minio.service file before using it (view such parameters as AssertFileIsExecutable and EnvironmentFile). Open it in a text editor:

sudo nano minio.service

  1. After viewing, move minio.service to the configuration directory systemd:

sudo mv minio.service /etc/systemd/system

  1. Reload systemd units:

sudo systemctl daemon-reload

  1. Start the MinIO service and make is start automatically at boot:

sudo systemctl enable --now minio

Install the MinIO Client Tool and create a bucket

  1. Download the binary file MinIO Client Tool from the official website:

sudo wget

  1. Make the file executable:

sudo chmod +x mc

  1. Configure an alias to MinIO:

./mc alias set minio http://minio-server.your_domain:9000 elma365user SecretPassword

  1. Create a bucket:

./mc mb minio/s3elma365 --region=us-east-1

Connection to MinIO

Parameters for MinIO connection:

  • address: <minio-server-address>:9000
  • bucket: s3elma365
  • region: us-east-1
  • access key ID: elma365user
  • secret access key: SecretPassword
  • upload method: PUT
  • enable SSL? No

To improve security, you can isolate the S3 server in the organization’s local network.

In this case, users will access it through a proxy server. You can enable a proxy server during installation or reconfiguration (if an external S3 was connected during installation) of ELMA365. To do that, when asked “Enable proxying connection to external S3 through ELMA365?”, answer affirmatively.

Important: to work with proxy without issues, make sure that the name of the container (bucket) in the S3 storage is s3elma365.

Found a typo? Highlight the text, press ctrl + enter and notify us