mc mb

Syntax

The mc mb command creates a new bucket or directory at the specified path.

You can also use mc mb against the local filesystem to produce similar results to the mkdir -p commandline tool.

The following command creates a new bucket mydata on the myminio MinIO deployment. The command creates the bucket with object locking enabled.

mc mb --with-locks myminio/mydata

The command has the following syntax:

mc [GLOBALFLAGS] mb                   \
                 [--ignore-existing]  \
                 [--region "string"]  \
                 [--with-lock]        \
                 ALIAS
  • Brackets [] indicate optional parameters.

  • Parameters sharing a line are mutually dependent.

  • Parameters seperated using the pipe | operator are mutually exclusive.

Copy the example to a text editor and modify as-needed before running the command in the terminal/shell.

Parameters

ALIAS

Required The MinIO or other S3-compatible service on which to create the new bucket.

For creating a bucket on MinIO, specify the alias and the name of the bucket. For example:

mc mb play/mybucket

For creating a directory on a local filesystem, specify the full path to that directory. For example:

mc ls ~/mydata/object.txt
--ignore-existing, p

Directs mc mb to do nothing if the bucket or directory already exists.

--region

The region in which to create the specified bucket. Has no effect if the specified ALIAS is a filesystem directory.

--with-lock, l

Enables object locking on the specified bucket. Has no effect if the specified ALIAS is a standalone MinIO deployments or a filesystem directory.

Important

You can only enable object locking when creating the bucket. Buckets created without object locking cannot use Bucket Lifecycle Management or Bucket Object Locking functionality.

Global Flags

--debug
Optional

Enables verbose output to the console.

For example:

mc --debug COMMAND
--config-dir
Optional

The path to a JSON formatted configuration file that mc uses for storing data. See Configuration File for more information on how mc uses the configuration file.

--JSON
Optional

Enables JSON lines formatted output to the console.

For example:

mc --JSON COMMAND
--no-color
Optional

Disables the built-in color theme for console output. Useful for dumb terminals.

--quiet
Optional

Suppresses console output.

--insecure
Optional

Disables TLS/SSL certificate verification. Allows TLS connectivity to servers with invalid certificates. Exercise caution when using this option against untrusted S3 hosts.

--version
Optional

Displays the current version of mc.

--help
Optional

Displays a summary of command usage on the terminal.

Examples

Create Bucket

Use mc mb to create a bucket on an S3-compatible host. The --with-lock option creates the bucket with locking enabled:

mc mb --with-lock ALIAS/BUCKET
  • Replace ALIAS with the alias of the S3-compatible host.

  • Replace BUCKET with the bucket to create.

Behavior

Bucket Limits for Non-MinIO S3 Services

Certain S3 services may restrict the number of buckets a given user or account can create. For example, Amazon S3 limits each account to 100 buckets. mc mb may return an error if the user has reached bucket limits on the target S3 service.

MinIO Object Storage deployments do not place any limits on the number of buckets each user can create.

Enable Object Locking at Bucket Creation

MinIO follows AWS S3 behavior where you must enable object locking at bucket creation. Buckets created without object can never enable object retention or locking.

Enabling bucket locking does not set any object locking or retention settings. Consider enabling bucket locking as standard practice.

S3 Compatibility

The mc commandline tool is built for compatibility with the AWS S3 API and is tested MinIO and AWS S3 for expected functionality and behavior.

MinIO provides no guarantees for other S3-compatible services, as their S3 API implementation is unknown and therefore unsupported. While mc commands may work as documented, any such usage is at your own risk.