create minio bucket automatically on startup (minio-initialize.sh)
All checks were successful
cc-ci/testme cc-ci: success

Replace the one-shot minio-createbuckets service (which required a
manual 'abra app restart minio-createbuckets' that appeared to hang)
with a minio-initialize.sh config, ported from lasuite-docs. The minio
service entrypoint runs it in the background before starting minio; it
waits for minio to be ready and idempotently creates the
drive-media-storage bucket with versioning. Manual trigger:
'abra app cmd minio minio_initialize'.
This commit is contained in:
notplants
2026-06-23 19:26:19 +00:00
committed by notplants
parent 0b64135f98
commit 9e4c194783
4 changed files with 43 additions and 24 deletions

View File

@ -228,28 +228,6 @@ services:
networks:
- backend
minio-createbuckets:
image: minio/minio:RELEASE.2025-09-07T16-13-09Z
environment: *minio-env
entrypoint: >
sh -c "
MINIO_ROOT_USER=\"\$$(cat /run/secrets/minio_ru)\" &&
MINIO_ROOT_PASSWORD=\"\$$(cat /run/secrets/minio_rp)\" &&
/usr/bin/mc alias set drive http://minio:9000 \$${MINIO_ROOT_USER} \"\$${MINIO_ROOT_PASSWORD}\" && \
/usr/bin/mc mb drive/drive-media-storage && \
/usr/bin/mc version enable drive/drive-media-storage && \
exit 0;"
deploy:
mode: replicated
replicas: 0
restart_policy:
condition: none
secrets:
- minio_rp
- minio_ru
networks:
- backend
minio:
image: minio/minio:RELEASE.2025-09-07T16-13-09Z
environment: *minio-env
@ -262,13 +240,17 @@ services:
- backend
- proxy
command: minio server /data
entrypoint: ["/usr/bin/docker-entrypoint.sh"]
entrypoint: >
sh -c "/minio-initialize.sh & exec /usr/bin/docker-entrypoint.sh \"$$@\"" --
volumes:
- minio:/data
configs:
- source: abra_entrypoint
target: /abra-entrypoint.sh
mode: 0555
- source: minio_initialize
target: /minio-initialize.sh
mode: 0555
secrets:
- minio_rp
- minio_ru
@ -413,6 +395,9 @@ configs:
migrate:
name: ${STACK_NAME}_migrate_${MIGRATE_VERSION}
file: migrate.sh
minio_initialize:
name: ${STACK_NAME}_minio_initialize_${MINIO_INITIALIZE_VERSION}
file: minio-initialize.sh
onlyoffice_conf:
name: ${STACK_NAME}_onlyoffice_conf_${ONLYOFFICE_CONF_VERSION}
file: onlyoffice-config.json.tmpl