Um einen neuen Bucket über Terraform zu erstellen, wird in diesem Beispiel der aminueza/minio
Terraform Provider verwendet.
-
Terraform installieren
Bevor Sie loslegen, stellen Sie sicher, dass Terraform installiert ist und Sie S3-Zugangsdaten besitzen:
-
Dateien erstellen
Erstellen Sie einen neuen Ordner für Ihr Projekt und ergänzen Sie die Dateien
minio.tf
undterraform.tfvars
.Sie sollten nun eine Ordnerstruktur wie diese haben:
terraform/ ├── minio.tf └── terraform.tfvars
-
Terraform-Konfiguration hinzufügen
Bearbeiten Sie
minio.tf
mit einem Texteditor Ihrer Wahl und fügen Sie folgenden Inhalt ein:Ersetzen Sie
fsn1
mit Ihrem bevorzugten Standort.terraform { required_providers { minio = { source = "aminueza/minio" } } } variable "access_key" {} variable "secret_key" {} provider "minio" { minio_server = "fsn1.your-objectstorage.com" minio_user = "${var.access_key}" minio_password = "${var.secret_key}" minio_region = "fsn1" minio_ssl = true } resource "random_uuid" "id" {} resource "minio_s3_bucket" "bucket" { bucket = random_uuid.id.result acl = "private" object_locking = false }
Mit dieser Konfiguration wird ein neuer Bucket mit einem zufälligen Namen (
random_uuid
) und der Sichtbarkeit-Einstellungprivat
erstellt.Um Object Locking zu aktivieren, ändern Sie den Wert von
object_locking
von "false" in "true".Eine genaue Dokumentation für den MinIO Terraform Provider finden Sie in der Terraform-Dokumentation.
-
Variablen hinzufügen
Bearbeiten Sie
terraform.tfvars
mit einem Texteditor Ihrer Wahl und fügen Sie folgenden Inhalt ein:Ersetzen Sie
YOUR_ACCESS_KEY
undYOUR_SECRET_KEY
mit Ihren eigenen Keys.access_key = "YOUR_ACCESS_KEY" secret_key = "YOUR_SECRET_KEY"
-
Bucket erstellen
Navigieren Sie in den Ordner mit den eben erstellten Dateien und führen Sie folgende Befehle aus, um einen neuen Bucket zu erstellen:
terraform init terraform apply
In der Cloud Console sollte der neue Bucket nun ebenfalls angezeigt werden. Um den eben erstellten Bucket wieder zu entfernen, kann im selben Ordner, in dem soeben terraform apply
ausgeführt wurde nun terraform destroy
ausgeführt werden.
Nächste Schritte: