MinIO Storage
S3-compatible object storage
S3-compatible object storage server. Develop locally with the same APIs as Amazon S3.
Default Configuration
Image: minio/minio:latest
Container: damp-minio
Ports:
- 9000:9000 # API
- 8900:8900 # Console
Network: devnet
Volume: damp-minio:/dataEnvironment Variables
| Variable | Value | Description |
|---|---|---|
MINIO_ROOT_USER | root | Admin username |
MINIO_ROOT_PASSWORD | password | Admin password |
Connection Information
Console (Web UI)
http://localhost:8900Login:
- Username:
root - Password:
password
API Endpoint
From Docker Containers:
http://damp-minio:9000From Host Machine:
http://localhost:9000Laravel S3 Configuration
Install Flysystem
composer require league/flysystem-aws-s3-v3Configure .env
AWS_ACCESS_KEY_ID=root
AWS_SECRET_ACCESS_KEY=password
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=my-bucket
AWS_ENDPOINT=http://damp-minio:9000
AWS_USE_PATH_STYLE_ENDPOINT=trueCreate Bucket
- Open
http://localhost:8900 - Login with credentials above
- Click "Create Bucket"
- Name it
my-bucket
Usage
use Illuminate\Support\Facades\Storage;
// Store file
Storage::disk('s3')->put('file.txt', 'Contents');
// Retrieve file
$contents = Storage::disk('s3')->get('file.txt');
// Get URL
$url = Storage::disk('s3')->url('file.txt');Use Cases
- 📦 File Uploads - User-generated content
- 🖼️ Image Storage - Product photos, avatars
- 📄 Document Storage - PDFs, reports
- 💾 Backups - Database dumps, archives
- 🎥 Media Files - Videos, audio files
MinIO Client (mc)
Install Client
# In devcontainer or host
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mcConfigure
mc alias set local http://localhost:9000 root passwordCommon Commands
# List buckets
mc ls local
# Create bucket
mc mb local/my-bucket
# Upload file
mc cp file.txt local/my-bucket/
# Download file
mc cp local/my-bucket/file.txt ./S3 Compatible
Any S3 client or SDK works with MinIO - develop locally, deploy to AWS seamlessly!
Web Console
The MinIO console at http://localhost:8900 provides bucket management, file browser, and monitoring!