MinIO is a high-performance, S3-compatible object storage server you can run on your own infrastructure. This guide deploys MinIO using Docker Compose with Traefik handling automatic HTTPS on two separate domains — one for the web console, one for the S3 API. By the end, you'll have MinIO serving S3-compatible object storage securely at your domains.

Set Up the Directory Structure

1. Create the project directory structure:

$ mkdir -p ~/minio/{data,letsencrypt}

$ cd ~/minio