Files
homelab/docker-compose/minio/docker-compose.yml
2026-08-27 12:07:31 +03:30

56 lines
2.0 KiB
YAML

services:
minio:
image: minio/minio:RELEASE.2024-01-18T22-51-28Z-cpuv1
container_name: minio
restart: unless-stopped
environment:
MINIO_ROOT_USER: ${MINIO_ROOT_USER}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD}
MINIO_BROWSER_REDIRECT_URL: https://minio.home.server
volumes:
- ./data:/data
command: server /data --console-address ":9001"
mem_limit: 256m
networks:
- web_net
labels:
- "traefik.enable=true"
- "traefik.docker.network=web_net"
# Console
- "traefik.http.routers.minio-console.rule=Host(`minio.home.server`)"
- "traefik.http.routers.minio-console.entrypoints=websecure"
- "traefik.http.routers.minio-console.tls=true"
- "traefik.http.routers.minio-console.service=minio-console"
- "traefik.http.routers.minio-console.middlewares=security-headers@file"
- "traefik.http.services.minio-console.loadbalancer.server.port=9001"
# HTTP -> HTTPS
- "traefik.http.routers.minio-console-http.rule=Host(`minio.home.server`)"
- "traefik.http.routers.minio-console-http.entrypoints=web"
- "traefik.http.routers.minio-console-http.middlewares=redirect-to-https@file"
- "traefik.http.routers.minio-console-http.service=minio-console"
# S3 API
- "traefik.http.routers.minio-api.rule=Host(`s3.home.server`)"
- "traefik.http.routers.minio-api.entrypoints=websecure"
- "traefik.http.routers.minio-api.tls=true"
- "traefik.http.routers.minio-api.service=minio-api"
- "traefik.http.routers.minio-api.middlewares=security-headers@file"
- "traefik.http.services.minio-api.loadbalancer.server.port=9000"
# HTTP -> HTTPS
- "traefik.http.routers.minio-api-http.rule=Host(`s3.home.server`)"
- "traefik.http.routers.minio-api-http.entrypoints=web"
- "traefik.http.routers.minio-api-http.middlewares=redirect-to-https@file"
- "traefik.http.routers.minio-api-http.service=minio-api"
networks:
web_net:
external: true