mirror of
https://github.com/opf/openproject.git
synced 2026-06-14 03:30:14 +00:00
827f577c85
Instead of assuming that the TLD is .local, we allow to overwrite it with different TLDs, so that the local setup can be adapted to developer needs.
45 lines
1.5 KiB
YAML
45 lines
1.5 KiB
YAML
services:
|
|
# local S3 storage for development
|
|
minio:
|
|
image: minio/minio:latest
|
|
ports:
|
|
- "9000:9000" # API port
|
|
- "9001:9001" # Admin Console (Management UI) port
|
|
volumes:
|
|
- minio_data:/data
|
|
environment:
|
|
MINIO_ROOT_USER: minioadmin
|
|
MINIO_ROOT_PASSWORD: minioadmin
|
|
entrypoint: sh
|
|
# minio automatically maps folders to buckets, so we create the bucket here before starting the server
|
|
command: -c 'mkdir -p /data/openproject-uploads && /usr/bin/minio server --console-address ":9001" /data'
|
|
networks:
|
|
- external
|
|
labels:
|
|
- "traefik.enable=true"
|
|
# MinIO API
|
|
- "traefik.http.routers.minio.entrypoints=websecure"
|
|
- "traefik.http.routers.minio.rule=Host(`minio.${OPENPROJECT_DOCKER_DEV_TLD}`)"
|
|
- "traefik.http.routers.minio.service=minio"
|
|
- "traefik.http.routers.minio.tls.certresolver=step"
|
|
- "traefik.http.services.minio.loadbalancer.server.port=9000"
|
|
# MinIO Admin Console (Management UI)
|
|
- "traefik.http.routers.minioadmin.entrypoints=websecure"
|
|
- "traefik.http.routers.minioadmin.rule=Host(`minioadmin.${OPENPROJECT_DOCKER_DEV_TLD}`)"
|
|
- "traefik.http.routers.minioadmin.service=minioadmin"
|
|
- "traefik.http.routers.minioadmin.tls.certresolver=step"
|
|
- "traefik.http.services.minioadmin.loadbalancer.server.port=9001"
|
|
healthcheck:
|
|
test: [ "CMD", "mc", "ready", "local" ]
|
|
interval: 30s
|
|
timeout: 20s
|
|
retries: 3
|
|
|
|
volumes:
|
|
minio_data:
|
|
|
|
networks:
|
|
external:
|
|
name: gateway
|
|
external: true
|