Overview
This template provides a production‑ready MinIO instance as a Monk runnable. You can:- Run it directly to get a managed MinIO server with sensible defaults
- Inherit it in your own runnable to seamlessly add S3-compatible object storage to your stack
What this template manages
- MinIO server container (
minio/minioimage, configurable tag) - Network services on API (9000) and console (9001) ports
- Persistent volumes for object storage
- S3-compatible API
- Web-based management console
Quick start (run directly)
- Load templates
- Run MinIO with defaults
- Customize credentials (recommended via inheritance)
variables. Secrets added with monk secrets add will not affect this runnable unless you inherit it and reference those secrets.
- Preferred: inherit and replace variables with
secret("...")as shown below. - Alternative: fork/clone and edit the
variablesinminio.yml, thenmonk load MANIFESTand run.
http://localhost:9001 or use the S3 API at http://localhost:9000 using the configured credentials.
Configuration
Key variables you can customize in this template:${monk-volume-path}/minio-data on the host.
Use by inheritance (recommended for apps)
Inherit the MinIO runnable in your application and declare a connection. Example:Ports and connectivity
- Service:
apion TCP port9000(S3-compatible API) - Service:
consoleon TCP port9001(Web management interface) - From other runnables in the same process group, use
connection-hostname("\<connection-name>")to resolve the MinIO host.
Persistence and configuration
- Data path:
${monk-volume-path}/minio-data:/data - All object data is stored in this persistent volume
- Data persists across container restarts
Features
- S3-compatible API
- High performance for large scale AI/ML and data lake workloads
- Data protection (erasure coding)
- Encryption at rest and in transit
- Versioning and lifecycle management
- Multi-cloud gateway capabilities
- Web-based management console
Related templates
- See other templates in this repository for complementary services
- Combine with monitoring tools for observability
- Integrate with your application stack as needed
Troubleshooting
- If you changed
admin-passwordbut the container has existing data, you may need to restart with fresh volumes. - Ensure the host volumes are writable by the container user.
- Check logs: