CloudLinux.ro
Storage & files

How to self-host S3 storage with MinIO

Updated 7/20/2026

Many apps store files through an S3 API (from Amazon). MinIO gives you exactly that API, but on your own server, with control and a fixed cost.

1. Start MinIO with Docker

docker run -d -p 9000:9000 -p 9001:9001 --name minio \
  -e "MINIO_ROOT_USER=admin" \
  -e "MINIO_ROOT_PASSWORD=strong_password" \
  -v minio_data:/data \
  minio/minio server /data --console-address ":9001"

2. Access the console

The web interface is on port 9001, the S3 API on 9000. Create a "bucket" from the console.

3. Connect an application

The app uses standard S3 settings, just with your endpoint:

S3_ENDPOINT=https://s3.example.com
S3_KEY=admin
S3_SECRET=strong_password
S3_BUCKET=files

4. Securing it

Put MinIO behind a reverse proxy with HTTPS, see Nginx as a reverse proxy, and create users with limited rights instead of the admin account.

Backup

The minio_data volume holds all your files. Back it up regularly to a Backup Box, see backing up Docker volumes.

Put this guide into practice on your own VPS

EU cloud servers, billed hourly, ready in minutes, with one-click installs for dozens of apps.

See pricing

Related tutorials