spb/datacenterindex
Public
HTML 53.9%
TypeScript 44.5%
JavaScript 0.6%
SQL 0.5%
1#!/bin/sh2# One-shot MinIO bootstrap (service `minio-init`, image minio/mc): bucket + least-privilege app user.3# Idempotent: safe to re-run on every `compose up`.4set -eu5: "${MINIO_ROOT_USER:?}" "${MINIO_ROOT_PASSWORD:?}" "${S3_ACCESS_KEY:?}" "${S3_SECRET_KEY:?}"6BUCKET="${S3_BUCKET:-dci-raw}"78i=09until mc alias set local http://minio:9000 "$MINIO_ROOT_USER" "$MINIO_ROOT_PASSWORD" >/dev/null 2>&1; do10 i=$((i + 1)); [ "$i" -ge 60 ] && { echo "minio-init: minio not reachable" >&2; exit 1; }11 sleep 212done1314mc mb --ignore-existing "local/$BUCKET"15mc anonymous set none "local/$BUCKET" >/dev/null1617# app user restricted to the bucket (policy JSON is bucket-name specific: dci-raw)18mc admin user add local "$S3_ACCESS_KEY" "$S3_SECRET_KEY" >/dev/null 2>&1 || true19mc admin policy create local dci-raw-rw /policy/policy-dci-raw.json >/dev/null 2>&1 || true20mc admin policy attach local dci-raw-rw --user "$S3_ACCESS_KEY" >/dev/null 2>&1 || true2122echo "minio-init: bucket $BUCKET ready, user $S3_ACCESS_KEY has policy dci-raw-rw"23mc ls local/24