Azureにコンテナインスタンスをデプロイする

This article was translated from English: Does it need improvement?
Translated
View the article in English

使用Azure上のテラフォームを使用してIronSecureDoc Dockerコンテナをデプロイし、パブリックIPアドレスとFQDNで利用できるようにします。

前提条件

ステップ1:GitHubリポジトリのテンプレートをクローンする

GitHub Repositoryのテンプレートが用意されているので、クローンしてすぐに始めることができます。これ:

https://github.com/iron-software/IronSecureDoc-Terraform/

ステップ2:すべてのリソース名を修正する

variables.tf`のすべてのリソース名を修正する。

  • リソースグループ名`:リソースグループの名前。
  • resource_group_location`:リソースグループの場所。REGIONS.mdから地域を見つけることができる。
  • コンテナグループ名`:コンテナグループの名前。
  • コンテナ名`:コンテナの名前。
  • image_tag:配置する画像のタグはlatest` または任意の数字である。
  • その他の変数は変更する必要はない。

すべての機密データを含む secret.tfvars を作成し、以下の変数を埋める。

Azureコンテナレジストリ

dns_name_label = var.dns_name_label の後に main.tf を追加する:

image_registry_credential {
  server   = var.registry_server
  username = var.registry_username
  password = var.registry_password
}

variables.tf`が追加された:

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`が追加された:

registry_server     = "<registry-name>.azurecr.io"
registry_username   = "YOUR-REGISTRY-USERNAME"
registry_password   = "YOUR-REGISTRY-PASSWORD"
license_key         = "YOUR-LICENSE-KEY"

ドッカー・ハブ

secret.tfvars`が追加された:

license_key         = "YOUR-LICENSE-KEY"

ステップ3:Terraformを初期化する

terraform initを実行してTerraformのデプロイを初期化します。 このコマンドは、Azureリソースの管理に必要なAzureプロバイダーをダウンロードする。

terraform init -upgrade

ステップ4: Terraformの実行計画を作成する

走るテラフォーム計画で実行計画を作成する。

terraform plan -var-file="secret.tfvars" -out main.tfplan

ステップ5: Terraformの実行計画を適用する

走るテラフォーム実行プランをクラウドインフラに適用する。

terraform apply main.tfplan

ステップ6:結果の検証

  1. 実行プランを適用すると、TerraformはパブリックIPアドレスを出力します。 IPアドレスを再度表示するには、terraform outputを実行する。
  terraform output -raw container_ipv4_address

またはFQDNを表示する。

  terraform output -raw container_fqdn
  1. 検証にはPostmanかcurlを使う。 結果は pong を返すはずである。
  curl http://<container_ipv4_address>:8080/v1/document-services/ping

またはFQDNを使用する

  curl http://<container_fqdn>:8080/v1/document-services/ping

ステップ7:リソースを破棄する

  • リソースを破壊するための実行計画を作成する
terraform plan -destroy -var-files="secret.tfvars" -out main.tfplan
  • 実行破棄プランを適用する
terraform apply main.tfplan