Despliegue de una instancia de contenedor en Azure
UtiliceTerraform on Azure para desplegar el contenedor Docker IronSecureDoc y hacer que esté disponible con una dirección IP pública y un FQDN.
Requisitos previos
-Instalar y configurar Terraform
-Autenticar Terraform en Azure
Paso 1: Clonar plantilla de repositorio GitHub
Tenemos la plantilla del repositorio de GitHub lista para que la clones y empieces inmediatamenteaquí:
https://github.com/iron-software/IronSecureDoc-Terraform/
Paso 2: Modificar todos los nombres de recursos
Modificar todos los nombres de recursos en variables.tf
nombre_grupo_recursos
: Nombre del grupo de recursos.resource_group_location
: Ubicación del grupo de recursos. Usted puede encontrar la región de REGIONS.md utilizar la segunda columna para rellenar esta variable.nombre_del_grupo_de_contenedores
: Nombre del grupo de contenedores.nombre_contenedor
: Nombre del contenedor.- etiqueta_imagen
: La etiqueta de la imagen a desplegar puede ser
latest` o cualquier número. - No es necesario cambiar otras variables.
Crear secret.tfvars
para contener todos los datos sensibles y rellenar las siguientes variables
Registro de contenedores Azure
main.tf
añade lo siguiente después de dns_name_label = var.dns_name_label
:
image_registry_credential {
server = var.registry_server
username = var.registry_username
password = var.registry_password
}
variables.tf
añade:
variable "registry_server" {
type = string
sensitive = false
description = "The server for the container registry. Required if the image is stored in a private registry."
}
variable "registry_username" {
type = string
sensitive = true
description = "Username for the container registry. Required if the image is stored in a private registry."
}
variable "registry_password" {
type = string
sensitive = true
description = "Password for the container registry. Required if the image is stored in a private registry."
default = "latest"
}
secret.tfvars
añade:
registry_server = "<registry-name>.azurecr.io"
registry_username = "YOUR-REGISTRY-USERNAME"
registry_password = "YOUR-REGISTRY-PASSWORD"
license_key = "YOUR-LICENSE-KEY"
Centro Docker
secret.tfvars
añade:
license_key = "YOUR-LICENSE-KEY"
Paso 3: Inicializar Terraform
Ejecute terraform init para inicializar el despliegue de Terraform. Este comando descarga el proveedor de Azure necesario para gestionar sus recursos de Azure.
terraform init -upgrade
Paso 4: Crear un plan de ejecución de Terraform
Ejecutarplan de terraformación para crear un plan de ejecución.
terraform plan -var-file="secret.tfvars" -out main.tfplan
Paso 5: Aplicar un plan de ejecución de Terraform
Ejecutarterraformar aplicar para aplicar el plan de ejecución a su infraestructura de nube.
terraform apply main.tfplan
Paso 6: Verificar los resultados
- Al aplicar el plan de ejecución, Terraform muestra la dirección IP pública. Para volver a mostrar la dirección IP, ejecute terraform output.
terraform output -raw container_ipv4_address
o mostrar el FQDN.
terraform output -raw container_fqdn
- Utilice Postman o curl para validar. El resultado debería devolver
pong
.
curl http://<container_ipv4_address>:8080/v1/document-services/ping
o utilice FQDN
curl http://<container_fqdn>:8080/v1/document-services/ping
Paso 7: Destruir el recurso
- Crear un plan de ejecución para destruir el recurso
terraform plan -destroy -var-files="secret.tfvars" -out main.tfplan
- Aplicar un plan de destrucción de la ejecución
terraform apply main.tfplan