DokployD
Dokploy2y ago
2 replies
The Pegasus

Minio setup

Saving this for posterity. If anybody is wondering how to get MinIO set up correctly with HTTPS, here's what I did:

    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


In your environment variables, set a different domain for each host. I went with:

MINIO_DASHBOARD_HOST=s3.dokploy.<mydomain>.com
MINIO_DASHBOARD_PORT=9001
MINIO_API_HOST=api.s3.dokploy.<mydomain>.com
MINIO_API_PORT=9000
HASH=infra-minio-<defaulthash>
Was this page helpful?