Deploy a C# Container Instance in Azure

Curtis Chau
Curtis Chau
Updated: 9 de maio de 2026

Use Terraform no Azure para implantar o contêiner Docker IronSecureDoc e torná-lo disponível com um endereço IP público e FQDN.

Pré-requisitos

Passo 1: Clonar o modelo do repositório GitHub

Já temos o modelo de repositório GitHub pronto para você clonar e começar imediatamente aqui :

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

Etapa 2: Modificar todos os nomes de recursos

Modifique Todos os Nomes de Recursos em variables.tf

  • resource_group_name: Nome do grupo de recursos.
  • resource_group_location: Localização do grupo de recursos. Você pode encontrar a região em REGIONS.md e usar a segunda coluna para preencher esta variável.
  • container_group_name: Nome do grupo de contêineres.
  • container_name: Nome do contêiner.
  • image_tag: A tag da imagem a ser implantada; pode ser latest ou qualquer número de versão específico.
  • Não é necessário alterar outras variáveis.

Crie secret.tfvars para Conter Todos os Dados Sensíveis

Popule as seguintes variáveis em secret.tfvars.

Registro de contêiner do Azure

Anexe a main.tf após dns_name_label = var.dns_name_label:

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

Adicione a 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."
}
HCL

Adicione a secret.tfvars:

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

Docker Hub

Adicione a secret.tfvars:

license_key = "YOUR-LICENSE-KEY"
HCL

Etapa 3: Inicializar o Terraform

Execute terraform init para inicializar a implantação do Terraform. Este comando baixa o provedor Azure necessário para gerenciar seus recursos do Azure.

terraform init -upgrade
SHELL

Etapa 4: Criar um Plano de Execução do Terraform

Execute terraform plan para criar um plano de execução.

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

Etapa 5: Aplicar um Plano de Execução do Terraform

Execute terraform apply para aplicar o plano de execução à sua infraestrutura de nuvem.

terraform apply main.tfplan
SHELL

Etapa 6: Verifique os resultados

  1. Ao aplicar o plano de execução, o Terraform gera o endereço IP público. Para exibir o endereço IP novamente, execute terraform output.

    terraform output -raw container_ipv4_address
    SHELL

    Ou exiba o FQDN.

    terraform output -raw container_fqdn
    SHELL
  2. Use o Postman ou curl para validar. O resultado esperado deve retornar pong.

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

    Ou use o FQDN.

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

Etapa 7: Destruir o recurso

  • Criar um plano de execução para a destruição do recurso.

    terraform plan -destroy -var-file="secret.tfvars" -out main.tfplan
    SHELL
  • Aplicar um plano de destruição de execução.

    terraform apply main.tfplan
    SHELL

Perguntas frequentes

Como faço para implantar um contêiner Docker no Azure usando o Terraform?

Para implantar um contêiner Docker no Azure usando o Terraform, você precisa clonar o modelo do repositório GitHub do IronSecureDoc, modificar os nomes dos recursos no arquivo variables.tf e criar um arquivo secret.tfvars com dados confidenciais. Em seguida, inicialize a implantação com terraform init e crie e aplique um plano de execução usando terraform plan e terraform apply .

Quais são os passos necessários para configurar o Terraform para implantação no Azure?

Primeiro, instale e configure o Terraform e, em seguida, autentique-o no Azure. Clone o repositório específico do GitHub para o IronSecureDoc, modifique os nomes dos recursos no arquivo variables.tf e gerencie os dados confidenciais em secret.tfvars. Por fim, inicialize o Terraform e crie um plano de execução para a implantação.

Qual é o papel do Registro de Contêineres do Azure nesta implantação?

O Registro de Contêineres do Azure é usado para armazenar as imagens do Docker. Você precisa adicionar as credenciais do registro no arquivo main.tf e especificar as informações do registro nos arquivos variables.tf e secret.tfvars para que a implantação possa acessar e implantar as imagens do Docker necessárias.

Como posso verificar se minha implantação do Terraform no Azure foi bem-sucedida?

Após aplicar o plano de execução do Terraform, execute o terraform output para obter o endereço IP público ou o FQDN. Use ferramentas como o Postman ou curl para enviar uma solicitação ping ao serviço. Uma implantação bem-sucedida retornará 'pong'.

Qual comando é usado para inicializar o Terraform para implantações no Azure?

Para inicializar o Terraform para implantações no Azure, use o comando terraform init -upgrade . Isso baixa os plugins de provedor necessários para gerenciar recursos do Azure.

Como lidar com dados sensíveis em configurações do Terraform?

Dados sensíveis, como credenciais de registro e chaves de licença, devem ser armazenados em um arquivo secret.tfvars. Esse arquivo é referenciado durante os processos de planejamento e aplicação do Terraform para gerenciar informações sensíveis com segurança.

Qual é o processo para destruir recursos implantados no Azure usando o Terraform?

Para destruir recursos implantados no Azure usando o Terraform, crie um plano de execução de destruição com terraform plan -destroy -var-file='secret.tfvars' -out main.tfplan e aplique-o usando terraform apply main.tfplan .

How can I verify the deployment of the IronSecureDoc container?

You can verify the deployment by running terraform output to obtain the public IP or FQDN and using tools like Postman or curl to execute a ping, expecting a pong response.

What is the process to destroy the IronSecureDoc resources on Azure?

To destroy the resources, create a destroy execution plan with terraform plan -destroy and then apply it using terraform apply to remove IronSecureDoc resources from Azure.

Can I specify the tag of the IronSecureDoc Docker image during deployment?

Yes, you can specify the tag of the IronSecureDoc Docker image by setting the image_tag variable in the variables.tf file, using either latest or a specific version number.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Pronto para começar?

Versão:2024.10recém-lançado