Commit 95d1a07a authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Merge branch 'dev' into 'master'

Prepara migración a nuevas versiones

See merge request redmic-project/storage/minio!10
parents 491e34ad 6b403892
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -27,13 +27,13 @@ Manage bucket lifecycle with `ilm` command.
Add simple rule (30 days expiry time):

```sh
mc ilm add minio/<bucket> --expiry-days "30"
mc ilm rule add minio/<bucket> --expiry-days "30"
```

Add complex rule (30 days expiry time for objects with `test/` prefix):

```sh
mc ilm import minio/<bucket> <<EOF
mc ilm rule import minio/<bucket> <<EOF
{
    "Rules": [
        {
@@ -54,5 +54,5 @@ EOF
List lifecycle configuration set on a bucket:

```sh
mc ilm ls minio/<bucket>
mc ilm rule ls minio/<bucket>
```
+8 −5
Original line number Diff line number Diff line
@@ -4,6 +4,9 @@ CONSOLE_PORT=9001

MINIO_ROOT_USER=minioadmin
MINIO_ROOT_PASSWORD=minioadmin
MINIO_BROWSER=on
MINIO_BROWSER_REDIRECT=true
MINIO_BROWSER_SESSION_DURATION=12h
MINIO_PROMETHEUS_URL=http://prometheus:9090
MINIO_PROMETHEUS_JOB_ID=minio
MINIO_PROMETHEUS_AUTH_TYPE=public
@@ -13,9 +16,9 @@ TRAEFIK_SERVER_SUBDOMAIN=minioapi
TRAEFIK_CONSOLE_SUBDOMAIN=minio
PUBLIC_HOSTNAME=change.me

DATA_VOL_NAME=minio-vol
TRAEFIK_HEALTHCHECK_PATH=/minio/health/live
TRAEFIK_HEALTHCHECK_METHOD=HEAD
TRAEFIK_HEALTHCHECK_INTERVAL=1m
TRAEFIK_HEALTHCHECK_TIMEOUT=15s

VOL_DRIVER=local
VOL_TYPE=nfs4
VOL_ADDR=127.0.0.1
VOL_OPTS=rw,nolock,noatime,tcp,rsize=8192,wsize=8192,timeo=14
DATA_VOL_NAME=minio-data-vol
+1 −6
Original line number Diff line number Diff line
@@ -11,9 +11,4 @@ networks:

volumes:
  data-vol:
    name: ${DATA_VOL_NAME}
    driver: ${VOL_DRIVER}
    driver_opts:
      type: ${VOL_TYPE}
      o: addr=${VOL_ADDR},${VOL_OPTS}
      device: ${DATA_VOL_DEVICE:-:/minio-vol/}
    name: ${DATA_VOL_NAME}-{{.Node.Hostname}}
+31 −10
Original line number Diff line number Diff line
services:
  minio:
    image: ${IMAGE_NAME:-minio/minio}:${IMAGE_TAG:-latest}
    command: server ${DATA_PATH} --address :${SERVER_PORT} --console-address :${CONSOLE_PORT}
    image: ${IMAGE_NAME:-quay.io/minio/minio}:${IMAGE_TAG:-latest}
    command: server
    hostname: minio-{{.Node.Hostname}}
    environment:
      MINIO_ADDRESS: :${SERVER_PORT}
      MINIO_CONSOLE_ADDRESS: :${CONSOLE_PORT}
      MINIO_VOLUMES: ${DATA_PATH}
      MINIO_DOMAIN: ${TRAEFIK_SERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}
      MINIO_ROOT_USER:
      MINIO_ROOT_PASSWORD:
      MINIO_SERVER_URL: http://127.0.0.1:${SERVER_PORT}
      MINIO_BROWSER:
      MINIO_SERVER_URL: https://${TRAEFIK_SERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}
      MINIO_BROWSER_REDIRECT:
      MINIO_BROWSER_REDIRECT_URL: https://${TRAEFIK_CONSOLE_SUBDOMAIN}.${PUBLIC_HOSTNAME}
      MINIO_BROWSER_SESSION_DURATION:
      MINIO_PROMETHEUS_URL:
      MINIO_PROMETHEUS_JOB_ID:
      MINIO_PROMETHEUS_AUTH_TYPE:
@@ -17,7 +25,7 @@ services:
    volumes:
      - data-vol:${DATA_PATH}
    healthcheck:
      test: curl --fail --silent http://127.0.0.1:${SERVER_PORT}/minio/health/live
      test: ["CMD", "mc", "ping", "-x", "local"]
      interval: ${HEALTHCHECK_INTERVAL:-30s}
      timeout: ${HEALTHCHECK_TIMEOUT:-15s}
      retries: ${HEALTHCHECK_RETRIES:-5}
@@ -25,29 +33,42 @@ services:
    deploy:
      mode: replicated
      replicas: ${REPLICAS:-1}
      placement:
        max_replicas_per_node: 1
        constraints:
          - node.hostname == ${PLACEMENT_CONSTRAINTS_NODE_HOSTNAME:-node-hostname}
      restart_policy:
        delay: ${RESTART_DELAY:-5s}
      update_config:
        delay: ${UPDATE_DELAY:-1m}
        delay: ${UPDATE_DELAY:-0s}
      labels:
        traefik.enable: ${TRAEFIK_ENABLE:-true}

        traefik.http.routers.minio-server.entrypoints: ${TRAEFIK_ENTRYPOINT}
        traefik.http.routers.minio-server.rule: Host(`${TRAEFIK_SERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}`)
        traefik.http.routers.minio-server.rule: HostRegexp(`{bucket:[A-z0-9.-]*}${TRAEFIK_SERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME}`)
        traefik.http.routers.minio-server.service: minio-server
        traefik.http.services.minio-server.loadbalancer.server.port: ${SERVER_PORT}
        traefik.http.services.minio-server.loadbalancer.healthcheck.path: ${TRAEFIK_HEALTHCHECK_PATH}
        traefik.http.services.minio-server.loadbalancer.healthcheck.method: ${TRAEFIK_HEALTHCHECK_METHOD}
        traefik.http.services.minio-server.loadbalancer.healthcheck.interval: ${TRAEFIK_HEALTHCHECK_INTERVAL}
        traefik.http.services.minio-server.loadbalancer.healthcheck.timeout: ${TRAEFIK_HEALTHCHECK_TIMEOUT}

        traefik.http.routers.minio-console.entrypoints: ${TRAEFIK_ENTRYPOINT}
        traefik.http.routers.minio-console.rule: Host(`${TRAEFIK_CONSOLE_SUBDOMAIN}.${PUBLIC_HOSTNAME}`)
        traefik.http.routers.minio-console.service: minio-console
        traefik.http.services.minio-console.loadbalancer.server.port: ${CONSOLE_PORT}
        traefik.http.services.minio-console.loadbalancer.healthcheck.path: ${TRAEFIK_HEALTHCHECK_PATH}
        traefik.http.services.minio-console.loadbalancer.healthcheck.method: ${TRAEFIK_HEALTHCHECK_METHOD}
        traefik.http.services.minio-console.loadbalancer.healthcheck.interval: ${TRAEFIK_HEALTHCHECK_INTERVAL}
        traefik.http.services.minio-console.loadbalancer.healthcheck.timeout: ${TRAEFIK_HEALTHCHECK_TIMEOUT}
        traefik.http.services.minio-console.loadbalancer.healthcheck.port: ${SERVER_PORT}
      resources:
        limits:
          cpus: '${RESOURCES_LIMITS_CPUS:-0.5}'
          memory: ${RESOURCES_LIMITS_MEMORY:-512M}
          cpus: '${RESOURCES_LIMITS_CPUS:-1}'
          memory: ${RESOURCES_LIMITS_MEMORY:-640M}
        reservations:
          cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.001}'
          memory: ${RESOURCES_RESERVATIONS_MEMORY:-256M}
          cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.1}'
          memory: ${RESOURCES_RESERVATIONS_MEMORY:-320M}

networks:
  minio-net: