feat: auto-create MinIO bucket and validate storage in development

Add a separate minio-init container that automatically creates the 'local'
bucket when MinIO starts in development. Mark the seeded S3Storage as usable
by default so developers can use MinIO without manual validation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Andras Bacsai 2025-11-18 17:23:00 +01:00
parent 375d8e79b4
commit a552cbf4de
2 changed files with 21 additions and 0 deletions

View File

@ -20,6 +20,7 @@ class S3StorageSeeder extends Seeder
'bucket' => 'local', 'bucket' => 'local',
'endpoint' => 'http://coolify-minio:9000', 'endpoint' => 'http://coolify-minio:9000',
'team_id' => 0, 'team_id' => 0,
'is_usable' => true,
]); ]);
} }
} }

View File

@ -118,6 +118,26 @@ services:
- dev_minio_data:/data - dev_minio_data:/data
networks: networks:
- coolify - coolify
minio-init:
image: minio/mc:latest
pull_policy: always
container_name: coolify-minio-init
restart: no
depends_on:
- minio
entrypoint: >
/bin/sh -c "
echo 'Waiting for MinIO to be ready...';
until mc alias set local http://coolify-minio:9000 minioadmin minioadmin 2>/dev/null; do
echo 'MinIO not ready yet, waiting...';
sleep 2;
done;
echo 'MinIO is ready, creating bucket if needed...';
mc mb local/local --ignore-existing;
echo 'MinIO initialization complete - bucket local is ready';
"
networks:
- coolify
volumes: volumes:
dev_backups_data: dev_backups_data: