Object management
Foreword
Object management in MinIO refers to the management of buckets and the objects they contain, including their creation, access control, versioning, replication and metadata maintenance.
Prerequisites
- MinIO server
Create bucket
In the MinIO Console, navigate to the Buckets tab via the left sidebar and then select the Create Bucket button.
Enter the desired name of your bucket under Bucket Name and confirm this entry by clicking on the Create Bucket button.
If you use the Virtual-Host-Style Method, a subdomain must then be created in the DNS zone of the API domain, which corresponds to the name of the bucket and resolves to the IPv4 and IPv6 address of the MinIO server.
Example bucket domain: my-test-bucket.api.your-domain.tld
If you manage your DNS zones via our Customer Center, you will find all the important information in this Help Center article.
Path-Style vs. Virtual-Host-Style
MinIO supports access to buckets via the Path-Style (default) or the Virtual-Host-Style method. However, some applications require or expect the virtual host style method, so the following section explains how to switch between the two variants.
The adaptation of the access method requires root access. If you have a managed server, please contact our support so that they can make the adjustment.
Bucket access variants
method | example |
---|---|
Path-Style | |
Virtual-Host-Style | bucket-name.api. |
When using the virtual host style method, a subdomain with the same name must be created once for a newly created bucket before it is used so that it resolves to the IPv4 and IPv6 address of the MinIO server, see Customize MinIO API domain.
\nTo customize the access method for buckets, first connect to your MinIO server as root
user via SSH. Then execute the following command:
nano /etc/default/minio
You must now insert the following line in a free space in the configuration file:
MINIO_DOMAIN=api.<server-id>.creoline.cloud
Then save the file with Ctrl + S` and exit with
Ctrl + X` and restart the MinIO service with the following command:
systemctl restart minio
You can of course also use your own domain here and are not bound to our working domains.
Customize MinIO API domain
Prerequisite
- Customization of the corresponding DNS zone
- MinIO server (for a managed server, please contact our support team)
With the virtual host style method, the API domain and admin domain must not have the same domain level. Let's assume your main domain is your-domain.tld
and the admin domain is admin.your-domain.tld
. The API domain must therefore not be your-domain.tld
, which is why it makes sense to create the subdomain api.your-domain.tld
in the corresponding DNS zone.
Customize DNS zone
If API and admin domain are to be operated on the same main domain, we recommend a meaningful subdomain such as api.your-domain.tld
for the specification of the API domain.
If you manage your DNS zones via our Customer Center, you will find all the important information in this Help Center article.
Customize Nginx configuration
Connect to your MinIO server as root
user via SSH and enter the following command.
nano /etc/nginx/conf.d/<server-id>.creoline.cloud.conf
In the configuration file, you must enter the following NGINX server directive for the API domain once.
+
means this entry has been added (your desired domain)
-
means this entry has been removed (our preconfigured domain)
You can also keep our entry here if you wish.
# Nginx server directive: API domain
server {
- server_name api.<server-id>.creoline.cloud;
+ server_name <your-api-domain.tld>;
listen 9443;
...
}
Save the file with Ctrl + s
and then exit with Ctrl + x
.
Then load the new NGINX configuration with the following command so that the final certificate issue works correctly:
systemctl reload nginx
The following command renews your Let's Encrypt certificate so that the new domain is protected accordingly:
certbot --nginx --expand -d <your-api-domain.tld> --non-interactive --agree-tos -m <your e-mail address>
If you have retained our server_name
entry, we recommend that you also specify the option -d api.<server-id>.creoline.cloud
so that this is also protected by the SSL certificate.
You can then check whether you can successfully establish an encrypted connection via HTTPS by calling <your-api-domain.tld>
.
Customize MinIO admin domain
Prerequisite
- Customization of the corresponding DNS zone
- MinIO server (for a managed server, please contact our support team)
Customize DNS zone
If API and admin domain are to be operated on the same main domain, please note this warning.
If you manage your DNS zones via our Customer Center, you will find all the important information in this Help Center article.
Customize Nginx configuration
Connect to your MinIO server as root
user via SSH and enter the following command.
nano /etc/nginx/conf.d/<server-id>.creoline.cloud.conf
In the configuration file, you must enter the following NGINX server directive for the admin domain once.
+
means this entry has been added (your desired domain)
-
means this entry has been removed (our preconfigured domain)
You can also keep our entry here if you wish.
# Nginx-Server Directive: Admin-Domain
server {
- server_name admin.<server-id>.creoline.cloud;
+ server_name <your-admin-domain.tld>;
listen 9443;
...
}
Save the file with Ctrl + s
and then exit with Ctrl + x
.
Then load the new NGINX configuration with the following command so that the final certificate issue works correctly.
systemctl reload nginx
Now the Let's Encrypt certificate can be renewed so that your domain is protected accordingly.
certbot --nginx --expand -d <your-admin-domain.tld> --non-interactive --agree-tos -m <your e-mail address>
If you have retained our server_name
entry, we recommend that you also specify the option -d admin.<server-id>.creoline.cloud
so that this is also protected by the SSL certificate.
You can then check whether you can successfully establish an encrypted connection via HTTPS by calling <your-admin-domain.tld>
.