version: "3.8"
services:
minio:
image: minio/minio:RELEASE.2024-12-18T13-15-44Z
volumes:
- minio-data:/data
environment:
- MINIO_ROOT_USER
- MINIO_ROOT_PASSWORD
command: server /data --console-address ":9001"
labels:
- traefik.enable=true
- traefik.http.routers.${HASH}.service=${HASH}
- traefik.http.routers.${HASH}.rule=Host(`${MINIO_DASHBOARD_HOST}`)
# add the following two lines
- traefik.http.routers.${HASH}.entrypoints=websecure
- traefik.http.routers.${HASH}.tls.certresolver=letsencrypt
- traefik.http.services.${HASH}.loadbalancer.server.port=${MINIO_DASHBOARD_PORT}
# API router and service
- traefik.http.routers.${HASH}-api.service=${HASH}-api
- traefik.http.routers.${HASH}-api.rule=Host(`${MINIO_API_HOST}`)
# add the following two lines
- traefik.http.routers.${HASH}-api.entrypoints=websecure
- traefik.http.routers.${HASH}-api.tls.certresolver=letsencrypt
- traefik.http.services.${HASH}-api.loadbalancer.server.port=${MINIO_API_PORT}
#
# I set the cert resolver to `letsencrypt` because that's what I use;
# yours might be different. Check your Settings > Traefik FS > traefik.yml
volumes:
minio-data: