Déployer une instance de conteneur dans Azure
UtilisationTerraform sur Azure pour déployer le conteneur Docker IronSecureDoc et le rendre disponible avec une adresse IP et un FQDN publics.
Conditions préalables
Étape 1 : Cloner le modèle de dépôt GitHub
Le modèle de dépôt GitHub est prêt à être cloné pour que vous puissiez commencer immédiatementici:
https://github.com/iron-software/IronSecureDoc-Terraform/
Étape 2 : Modifier tous les noms de ressources
Modifier tous les noms de ressources dans variables.tf
resource_group_name
: Nom du groupe de ressources.resource_group_location
: Emplacement du groupe de ressources. Vous pouvez trouver la région dans REGIONS.md et utiliser la deuxième colonne pour remplir cette variable.container_group_name
: Nom du groupe de conteneurs.container_name
: Nom du conteneur.image_tag
: Le tag de l'image à déployer peut êtrelatest
ou n'importe quel nombre.- Les autres variables ne doivent pas être modifiées.
Créez secret.tfvars
pour contenir toutes les données sensibles et remplissez les variables suivantes
Registre de conteneurs Azure
main.tf
ajoute ce qui suit après dns_name_label = var.dns_name_label
:
image_registry_credential {
server = var.registry_server
username = var.registry_username
password = var.registry_password
}
variables.tf
ajoute :
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
ajoute :
registry_server = "<registry-name>.azurecr.io"
registry_username = "YOUR-REGISTRY-USERNAME"
registry_password = "YOUR-REGISTRY-PASSWORD"
license_key = "YOUR-LICENSE-KEY"
Hub Docker
secret.tfvars
ajoute :
license_key = "YOUR-LICENSE-KEY"
Étape 3 : Initialisation de Terraform
Exécutez terraform init pour initialiser le déploiement de Terraform. Cette commande télécharge le fournisseur Azure requis pour gérer vos ressources Azure.
terraform init -upgrade
Étape 4 : Créer un plan d'exécution Terraform
Exécuterplan de terraformation pour créer un plan d'exécution.
terraform plan -var-file="secret.tfvars" -out main.tfplan
Étape 5 : Appliquer un plan d'exécution Terraform
Exécuterterraformer appliquer pour appliquer le plan d'exécution à votre infrastructure en nuage.
terraform apply main.tfplan
Étape 6 : Vérifier les résultats
- Lorsque vous appliquez le plan d'exécution, Terraform affiche l'adresse IP publique. Pour afficher à nouveau l'adresse IP, exécutez terraform output.
terraform output -raw container_ipv4_address
ou afficher le FQDN.
terraform output -raw container_fqdn
- Utilisez Postman ou curl pour valider. Le résultat devrait retourner
pong
.
curl http://<container_ipv4_address>:8080/v1/document-services/ping
ou utiliser le FQDN
curl http://<container_fqdn>:8080/v1/document-services/ping
Étape 7 : Détruire la ressource
- Créer un plan d'exécution pour détruire une ressource
terraform plan -destroy -var-files="secret.tfvars" -out main.tfplan
- Appliquer un plan de destruction de l'exécution
terraform apply main.tfplan