Django Terraform digitalOcean повторное создание среды в новом дроплете

У меня есть приложение Django на базе saas, я хочу, чтобы, когда клиент попросит меня использовать мое программное обеспечение, я автоматически предоставил новый дроплет и автоматически развернул приложение там, а информация должна быть сохранена в моей базе данных, например, ip, имя клиента, информация о базе данных и т. д.

Это мой скрипт terraform, и он работает очень хорошо, потому что база данных теперь работает на

terraform {
  required_providers {
    digitalocean = {
      source = "digitalocean/digitalocean"
      version = "~> 2.0"
    }
  }
}

provider "digitalocean" {
  token = "dop_v1_60f33a1<MyToken>a363d033" 
}


resource "digitalocean_droplet" "web" {
  image  = "ubuntu-18-04-x64"
  name   = "web-1"
  region = "nyc3"
  size   = "s-1vcpu-1gb"
  ssh_keys = ["93:<The SSH finger print>::01"]

  connection {
    host = self.ipv4_address
    user = "root"
    type = "ssh"
    private_key = file("/home/py/.ssh/id_rsa") # it works
    timeout = "2m"
  }

  provisioner "remote-exec" {
    inline = [
        "export PATH=$PATH:/usr/bin",
        # install docker-compse
        # install docker
        # clone my github repo
        "docker-compose up --build -d"
    ]
  }

}

Я хочу, чтобы при выполнении команд создавался новый дроплет, новый экземпляр базы данных и подключалась база данных к моему файлу django .env.

Все должно быть создано автоматически. Может ли кто-нибудь помочь мне, как я могу это сделать?

или мой подход неверен? В этой ситуации, какое решение было бы лучшим?

Вернуться на верх