MinIO Setup
Fivemanage Lite supports any S3-compatible storage provider for handling file uploads. MinIO is the recommended solution for a fully self-hosted environment, offering high-performance object storage that is API compatible with Amazon S3.Running MinIO
We recommend using the official Docker imageminio/minio:latest.
Docker Command
To run a basic MinIO instance:Docker Compose
For a production-ready setup integrated with your stack:Configuration
Environment Variables
| Variable | Description | Default |
|---|---|---|
MINIO_ROOT_USER | The admin username. | minioadmin |
MINIO_ROOT_PASSWORD | The admin password. | minioadmin123 |
Connecting Fivemanage Lite
Once MinIO is running, you need to create a bucket (e.g.,fivemanage) and configure the application to connect to it.
- Access the Console: Go to
http://localhost:9001and login. - Create Bucket: Create a new bucket named
fivemanage. - Set Policy: Ensure the bucket or specific paths are accessible if you want public downloads (though Fivemanage Lite handles signed URLs for private files).
Production Recommendations
1. Volume Persistence
Always mount a volume for/data. Losing this volume means losing all uploaded files.
2. Security
- Change Default Credentials: Never use
minioadmin/minioadmin123in production. - TLS/SSL: In a production environment, you should run MinIO behind a reverse proxy (like Nginx or Traefik) that handles SSL termination, or configure MinIO with certificates directly.
3. Public Access
By default, MinIO buckets are private. Fivemanage Lite generates presigned URLs for secure access. If you need public hosting (e.g., for direct image linking without signatures), you will need to configure the bucket policy in MinIO to allowreadonly access to the * resource.
Troubleshooting
“Connection refused”- Ensure you are connecting to the API port (
9000), not the Console port (9001). - If running in Docker Compose, use the service name (e.g.,
http://lite-minio:9000) as the endpoint.
- Verify
AWS_ACCESS_KEY_IDandAWS_SECRET_ACCESS_KEYmatchMINIO_ROOT_USERandMINIO_ROOT_PASSWORD. - Ensure the bucket specified in
AWS_BUCKETactually exists.
.png?fit=max&auto=format&n=tUtwuHgibAuVylZ9&q=85&s=44653a825fa0664047dae92cd8969b2d)
