Self-hosting MinIO the easy way

Self-hosting MinIO the easy way

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
5 min

MinIO is a high-performance, S3-compatible object storage server. It's one of the most popular open-source alternatives to Amazon S3, and it's used by thousands of companies to store everything from backups to media files to AI training data. The problem? Running it yourself usually means setting up servers, configuring reverse proxies, and managing infrastructure.

Sliplane takes that hassle away. With one-click deployment, you can get MinIO up and running in minutes - no server setup, no reverse proxy config, no infrastructure headaches. Just your own private object storage, ready to go.

Prerequisites

Before deploying, ensure you have a Sliplane account (free trial available).

Quick start

Sliplane provides one-click deployment with presets.

SliplaneDeploy MinIO >
  1. Click the deploy button above
  2. Select a project
  3. Select a server. If you just signed up you get a 48-hour free trial server
  4. Click Deploy!

About the preset

The one-click deploy above uses Sliplane's MinIO preset. Here's what's included:

  • S3-compatible object storage out of the box
  • Image quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z (check quay.io for the most recent stable version)
  • Persistent storage mounted to /data so your objects survive restarts
  • The MinIO Console (web UI) is accessible on the same port via the --console-address flag
  • Default admin credentials are auto-generated for you

Next steps

Once MinIO is running on Sliplane, access it using the domain Sliplane provided (e.g. minio-xxxx.sliplane.app). This opens the MinIO Console, a built-in web UI for managing buckets, files, users, and policies.

Default credentials

The preset generates a random password for you. You can find your credentials in the service's environment variables on Sliplane:

  • MINIO_ROOT_USER: minioadmin (default)
  • MINIO_ROOT_PASSWORD: auto-generated random string

You should change these to something memorable or integrate them into your application's config right away.

Creating buckets

After logging in to the MinIO Console:

  1. Go to Buckets in the sidebar
  2. Click Create Bucket
  3. Give it a name (e.g. my-app-uploads) and hit Create

You can then upload files directly through the console or connect via any S3-compatible SDK or CLI tool.

Using the MinIO Client (mc)

To interact with your MinIO instance from the command line, install the MinIO Client and configure it:

mc alias set my-minio https://minio-xxxx.sliplane.app minioadmin YOUR_PASSWORD
mc ls my-minio
mc mb my-minio/my-bucket
mc cp myfile.txt my-minio/my-bucket/

Replace minio-xxxx.sliplane.app with your actual Sliplane domain and YOUR_PASSWORD with the generated password from your environment variables.

Environment variables

Here are the key environment variables you might want to customize:

VariableDescription
MINIO_ROOT_USERAdmin username
MINIO_ROOT_PASSWORDAdmin password
MINIO_SERVER_URLPublic URL for the API (set this if you use a custom domain)
MINIO_BROWSER_REDIRECT_URLPublic URL for the console (set this if you use a custom domain)

For a full list, see the MinIO environment variable reference.

Logging

MinIO logs to STDOUT by default, which works perfectly with Sliplane's built-in log viewer. For more verbose output, set the MINIO_LOG_LEVEL environment variable. For general Docker log tips, check out our post on how to use Docker logs.

Cost comparison

Of course you can also self-host MinIO with other cloud providers. Here is a pricing comparison for the most common ones:

ProvidervCPU CoresRAMDiskEstimated Monthly CostNotes
Sliplane22 GB40 GB€9charge per server
Render12 GB40 GB~$35-$45VM Small
Fly.io22 GB40 GB~$20-$25VM + volume
Railway22 GB40 GB~$15-$66Usage-based

If you just need hosted object storage without running your own server, check out our comparison of 5 cheap object storage providers.

FAQ

What can I use MinIO for?

MinIO is perfect for storing unstructured data like images, videos, backups, logs, and AI/ML datasets. Any app that speaks S3 can use MinIO as a drop-in replacement for Amazon S3. It's especially useful when you want full control over your data without relying on a cloud provider.

How do I connect my app to MinIO?

Use any S3-compatible SDK (like AWS SDK for JavaScript, boto3 for Python, or the MinIO SDK). Point the endpoint to your Sliplane domain, use your root credentials (or create a dedicated access key in the Console), and set the region to us-east-1 (MinIO's default).

How do I update MinIO?

Change the image tag in your service settings on Sliplane and redeploy. Check quay.io/minio/minio for the latest stable version. MinIO uses date-based version tags like RELEASE.2025-09-07T16-13-09Z.

Are there alternatives to MinIO?

Yes. If you're looking for managed object storage, providers like Hetzner, Backblaze B2, and Cloudflare R2 offer affordable options. Check out our post on 5 cheap object storage providers for a full comparison. If you want a self-hosted file sync solution instead, take a look at OpenCloud or Nextcloud.

Can I use MinIO with Docker Compose alongside other services?

Yes. MinIO works great as part of a multi-service setup. On Sliplane, you can deploy MinIO as one service and connect other services to it using Sliplane's internal networking. Just point your app's S3 endpoint to MinIO's internal service URL.

Self-host MinIO now - It's easy!

Sliplane gives you all the tools you need to run MinIO without server hassle.