Minio Server config.json (v18) Guide Slack Go Report Card Docker Pulls codecov

Minio server stores all its configuration data in ${HOME}/.minio/config.json file by default. Following sections provide detailed explanation of each fields and how to customize them. A complete example of config.json is available here

Configuration Directory

The default configuration directory is ${HOME}/.minio. You can override the default configuration directory using --config-dir command-line option. Minio server generates a new config.json with auto-generated access credentials when its started for the first time.

minio server --config-dir /etc/minio

Certificate Directory

TLS certificates are stored under ${HOME}/.minio/certs directory. You need to place certificates here to enable HTTPS based access. Read more about How to secure access to Minio server with TLS.

Following is the directory structure for Minio server with TLS certificates.

$ tree ~/.minio
/home/user1/.minio
├── certs
│   ├── CAs
│   ├── private.key
│   └── public.crt
└── config.json

Configuration Fields

Version

Field Type Description
version string version determines the configuration file format. Any older version will be automatically be migrated to the latest version upon startup. [DO NOT EDIT THIS FIELD MANUALLY]

Credential

Field Type Description
credential Auth credential for object storage and web access.
credential.accessKey string Access key of 5 to 20 characters in length. You may override this field with MINIO_ACCESS_KEY environment variable.
credential.secretKey string Secret key of 8 to 40 characters in length. You may override this field with MINIO_SECRET_KEY environment variable.

Example:

export MINIO_ACCESS_KEY=admin
export MINIO_SECRET_KEY=password
minio server ~/Photos

Region

Field Type Description
region string region describes the physical location of the server. By default it is set to us-east-1, which is same as AWS3's default region. If you are unsure leave it to default.

Browser

Field Type Description
browser string Enable or disable access to web UI. By default it is set to on. You may override this field with MINIO_BROWSER environment variable.

Example:

export MINIO_BROWSER=off
minio server ~/Photos

Logger

Field Type Description
logger Server logs errors and fatal messages via logger. You may enable one or more loggers at the same time.
logger.console Send log messages to console.
logger.console.enable bool Enable or disable console logger. Default is set to true.
logger.file Send log message to a file.
logger.file.enable bool Enable or disable file logger. Default is set to false.
logger.file.filename string Path and name of the log file. Example: /var/log/minio.log

Notify

Field Type Description
notify Notify enables bucket notification events for lambda computing via the following targets.
notify.amqp Configure to publish Minio events via AMQP target.
notify.elasticsearch Configure to publish Minio events via Elasticsearch target.
notify.redis Configure to publish Minio events via Redis target.
notify.nats Configure to publish Minio events via NATS target.
notify.postgresql Configure to publish Minio events via PostgreSQL target.
notify.kafka Configure to publish Minio events via Apache Kafka target.
notify.webhook Configure to publish Minio events via Webhooks target.

Explore Further