Open-Source Wikis

/

MinIO

/

Reference

/

Configuration

minio/minio

Configuration

MinIO is configured through a combination of:

  • CLI flags (defined in cmd/server-main.go, cmd/main.go, etc.).
  • Environment variables (looked up via github.com/minio/pkg/v3/env).
  • A YAML config file (--config /etc/minio/config.yaml, parsed in cmd/server-main.go).
  • The cluster KV config persisted on the object store (mc admin config get/set).

Per-subsystem schemas are registered with internal/config/. This page lists the most-used environment variables grouped by area. The full list — including hidden flags and per-target notification env vars — lives in source.

Server bootstrap

Env var Default Source
MINIO_ROOT_USER required cmd/server-main.go
MINIO_ROOT_PASSWORD required cmd/server-main.go
MINIO_ADDRESS :9000 cmd/server-main.go
MINIO_CONSOLE_ADDRESS random cmd/server-main.go
MINIO_CONFIG empty YAML config path
MINIO_CERTS_DIR ~/.minio/certs TLS cert directory
MINIO_LOG_DIR empty Rotating log directory
MINIO_LOG_SIZE 10 MiB Per-file rotation size
MINIO_LOG_COMPRESS off gzip rotated logs
MINIO_MEMLIMIT unset GOMEMLIMIT for the process
MINIO_OPTS empty Extra CLI args (used by service files)

API

Env var Default Source
MINIO_API_REQUESTS_MAX scales with cores internal/config/api/
MINIO_API_REQUESTS_DEADLINE 10s internal/config/api/
MINIO_API_CORS_ALLOW_ORIGIN * CORS allow-list
MINIO_API_REPLICATION_WORKERS scales with cores internal/config/api/
MINIO_API_REPLICATION_FAILED_WORKERS configurable internal/config/api/
MINIO_API_TRANSITION_WORKERS configurable internal/config/api/

Identity

LDAP:

Env var Source
MINIO_IDENTITY_LDAP_SERVER_ADDR internal/config/identity/ldap/
MINIO_IDENTITY_LDAP_USER_DN_SEARCH_FILTER LDAP search filter
MINIO_IDENTITY_LDAP_USER_DN_SEARCH_BASE_DN LDAP base DN
MINIO_IDENTITY_LDAP_GROUP_SEARCH_FILTER Group filter
MINIO_IDENTITY_LDAP_TLS_SKIP_VERIFY for self-signed CAs

OpenID:

Env var Source
MINIO_IDENTITY_OPENID_CONFIG_URL internal/config/identity/openid/
MINIO_IDENTITY_OPENID_CLIENT_ID OAuth2 client id
MINIO_IDENTITY_OPENID_CLIENT_SECRET OAuth2 secret
MINIO_IDENTITY_OPENID_CLAIM_NAME which claim maps to a policy (default policy)
MINIO_IDENTITY_OPENID_REDIRECT_URI console redirect

Plug-in:

Env var Source
MINIO_IDENTITY_PLUGIN_URL internal/config/identity/plugin/
MINIO_IDENTITY_PLUGIN_AUTH_TOKEN bearer token to the plug-in

KMS

Env var Source
MINIO_KMS_KES_ENDPOINT KES endpoint URL
MINIO_KMS_KES_CERT_FILE client cert
MINIO_KMS_KES_KEY_FILE client key
MINIO_KMS_KES_CAPATH CA bundle
MINIO_KMS_KES_KEY_NAME default KEK name
MINIO_KMS_AUTO_ENCRYPTION on/off; force SSE-S3
MINIO_KMS_SECRET_KEY local single-key fallback (dev only)

Heal

Env var Source
MINIO_HEAL_DRIVE_WORKERS internal/config/heal/
MINIO_HEAL_MAX_IO I/O cap
MINIO_HEAL_SLEEP per-iteration sleep

Scanner

Env var Source
MINIO_SCANNER_SPEED slow / default / fast
MINIO_SCANNER_DELAY per-object pause
MINIO_SCANNER_MAX_WAIT max wait under load

Storage class

Env var Source
MINIO_STORAGE_CLASS_STANDARD EC:N parity for default class
MINIO_STORAGE_CLASS_RRS EC:N parity for reduced redundancy

Logging and audit

Env var Source
MINIO_LOGGER_WEBHOOK_ENDPOINT_<id> webhook URL
MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_<id> bearer
MINIO_AUDIT_WEBHOOK_ENDPOINT_<id> audit webhook
MINIO_AUDIT_KAFKA_BROKERS_<id> Kafka brokers
MINIO_AUDIT_KAFKA_TOPIC_<id> Kafka topic

Notifications

For each target type, the env var pattern is MINIO_NOTIFY_<TYPE>_<KEY>_<ID>. Examples:

Target Sample env var
Kafka MINIO_NOTIFY_KAFKA_BROKERS_primary
NATS MINIO_NOTIFY_NATS_ADDRESS_primary
MQTT MINIO_NOTIFY_MQTT_BROKER_primary
Webhook MINIO_NOTIFY_WEBHOOK_ENDPOINT_primary
ElasticSearch MINIO_NOTIFY_ELASTICSEARCH_URL_primary
AMQP MINIO_NOTIFY_AMQP_URL_primary
Redis MINIO_NOTIFY_REDIS_ADDRESS_primary
NSQ MINIO_NOTIFY_NSQ_NSQD_ADDRESS_primary
MySQL / PostgreSQL MINIO_NOTIFY_{MYSQL,POSTGRES}_DSN_STRING_primary

Each target supports QUEUE_DIR, QUEUE_LIMIT, and (where relevant) BATCH_SIZE. See internal/config/notify/.

Browser / console

Env var Source
MINIO_BROWSER enable/disable embedded console
MINIO_BROWSER_REDIRECT_URL external URL the console is reached via
MINIO_BROWSER_LOGIN_ANIMATION UI tweaks

Compression

Env var Source
MINIO_COMPRESS_ENABLE enable transparent compression
MINIO_COMPRESS_EXTENSIONS extension allow-list
MINIO_COMPRESS_MIME_TYPES MIME allow-list

Replication

Bucket-replication knobs live under MINIO_API_REPLICATION_* (see API table). Site replication has a few of its own:

Env var Source
MINIO_SITE_NAME optional site label
MINIO_SITE_REGION optional region label

Misc

Env var Source
MINIO_PROMETHEUS_AUTH_TYPE public (default), jwt
MINIO_DOMAIN virtual-host style domain
MINIO_PUBLIC_IPS extra public IPs for DNS announcements
MINIO_REGION cluster region
MINIO_ETCD_ENDPOINTS etcd cluster for coordination
MINIO_CALLHOME_ENABLE opt-in telemetry to MinIO SUBNET

CLI flags

./minio server --help prints every flag (including hidden ones tagged Hidden: true in cmd/server-main.go). Flags and env vars usually come in pairs; the env var wins when both are set.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Configuration – MinIO wiki | Factory