Deploy IronSecureDoc to AWS with C# Container Instance

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

O Amazon Elastic Container Service (Amazon ECS) é um serviço de gerenciamento de contêineres altamente escalável e rápido, que facilita a execução, a interrupção e o gerenciamento de seus contêineres. Você pode hospedar seus contêineres em uma infraestrutura sem servidor gerenciada pelo Amazon ECS, executando seus serviços ou tarefas no AWS Fargate. Para obter mais informações sobre o Fargate, consulte AWS Fargate para Amazon ECS .

Etapa 1: Faça login na sua conta da AWS.

Faça login no portal da AWS.

Se você não possui uma conta da AWS, registre-se para obter uma nova conta da AWS .

Etapa 2: Criar uma nuvem privada virtual

Você pode usar o Amazon Virtual Private Cloud (Amazon VPC) para executar recursos da AWS em uma rede virtual que você definiu. Recomendamos fortemente que você execute suas instâncias de contêiner em uma VPC.

Se você tiver uma VPC padrão, pode pular esta seção e ir para a próxima tarefa, Criar um grupo de segurança. Para determinar se você tem uma VPC padrão, consulte Plataformas compatíveis no Console do Amazon EC2 no Guia do usuário do Amazon EC2. Caso contrário, você pode criar uma VPC personalizada em sua conta seguindo os passos abaixo.

Para obter informações sobre como criar uma VPC, consulte Criar somente uma VPC no Guia do usuário da Amazon VPC e use a tabela a seguir para determinar quais opções selecionar.

Opção Value
Recursos para criar SomenteVPC
Nome Opcionalmente, forneça um nome para sua VPC.
Bloco CIDR IPv4 Entrada manual de CIDR IPv4
O tamanho do bloco CIDR deve estar entre /16 e /28.
Bloco CIDR IPv6 Nenhum bloco CIDR IPv6
Arrendamento Padrão

Para obter mais informações sobre o Amazon VPC, consulte O que é o Amazon VPC? no Guia do Usuário da Amazon VPC.

Etapa 3: Criar um grupo de segurança

Os grupos de segurança atuam como um firewall para as instâncias de contêiner associadas, controlando o tráfego de entrada e saída no nível da instância do contêiner. Você pode adicionar regras a um grupo de segurança que permitem conectar-se à sua instância de contêiner a partir do seu endereço IP usando SSH. Você também pode adicionar regras que permitam acesso HTTP e HTTPS de entrada e saída de qualquer lugar. Adicione quaisquer regras para abrir as portas necessárias para suas tarefas. As instâncias de contêiner exigem acesso à rede externa para se comunicarem com o endpoint do serviço Amazon ECS.

Para obter informações sobre como criar um grupo de segurança, consulte Criar um grupo de segurança no Guia do usuário do Amazon EC2 e use a tabela a seguir para determinar quais opções selecionar.

Opção Valor
Região A mesma região em que você criou seu par de chaves.
Nome Um nome fácil de lembrar, como ecs-instances-default-cluster.
VPC A VPC padrão (marcada com "(padrão)"
Observação
Se sua conta for compatível com o Amazon EC2 Classic, selecione a VPC que você criou na tarefa anterior.

Etapa 4: Criar um cluster ECS

Na página inicial do portal da AWS, pesquise "ECS" na caixa de pesquisa e selecione "Elastic Container Service". Ou abra o console em https://console.aws.amazon.com/ecs/v2 .

Search ECS

Selecione "Criar cluster".

Create cluster

Digite o "Nome do cluster". Na seção Infraestrutura, selecione apenas "AWS Fargate (sem servidor)".

Create cluster values

Deixe os outros valores como estão, e selecione Criar .

Etapa 5: Criar uma definição de tarefa

Após a criação do cluster, selecione Definições de Tarefa.

Create task definition

Selecione "Criar nova definição de tarefa" e, em seguida, selecione "Criar nova definição de tarefa".

Create new task definition

Na seção Configuração da definição de tarefa , insira o valor para Família de definição de tarefa .

Task definition configuration section

Na seção Requisitos de infraestrutura , insira os seguintes valores para Tipo de inicialização , CPU , Memória , Função da tarefa e Função de execução da tarefa .

  • Tipo de lançamento: Somente AWS Fargate
  • CPU: 1 vCPU
  • Memória: 2 GB
  • Função da tarefa: ecsTaskExecutionRole
  • Função de execução da tarefa: ecsTaskExecutionRole

Infrastructure requirements

Na seção Contêiner - 1 , insira os seguintes valores para Nome , URI da imagem , Porta do contêiner , Nome da porta e Variáveis ​​de ambiente .

  • Nome: mycontainer
  • URI da imagem: Use ironsoftwareofficial/ironsecuredoc para a mais recente ou especifique pelo tag ironsoftwareofficial/ironsecuredoc:2024.7.1
  • Porta do contêiner: 8080
  • Nome da porta: 8080
  • Adicionar variáveis ​​de ambiente:
    • ENVIRONMENT: Production
    • HTTP_PORTS: 8080
    • IronSecureDoc_LicenseKey: YOUR-LICENSE-KEY

Para a chave de licença IronSecureDoc_LicenseKey, não é recomendável adicioná-la diretamente às variáveis ​​de ambiente por motivos de segurança. Recomenda-se recuperar o arquivo de ambiente de um bucket criptografado do Amazon S3. Consulte Passar dados confidenciais para um contêiner do Amazon ECS .

Container section

Deixe os outros valores como estão, e selecione Criar .

Etapa 6: Criar um serviço

Volte para a página Clusters > Selecione seu cluster (IronSecureDoc).

Select your cluster

Selecione a aba "Serviço" > e depois selecione "Criar".

Create service

Na seção Ambiente , insira os seguintes valores para Opções de computação e Tipo de inicialização .

  • Opções de computação: Selecione Launch type
  • Tipo de lançamento: Selecione FARGATE

Service environment

Na seção Configuração de implantação , insira os seguintes valores para Tipo de aplicativo , Família , Revisão , Nome do serviço e Tarefas desejadas .

  • Tipo de aplicação: Selecione Service
  • Definição da tarefa:
    • Família: Selecione a definição de tarefa criada ironsecuredoc
    • Revisão: Selecione a revisão da definição de tarefa 1 (LATEST)
  • Nome do serviço: myservice
  • Tarefas desejadas: 1

Service deployment configuration

Observe que, para a configuração de rede, pode ser necessário criar uma VPC e um grupo de segurança, caso ainda não existam.

Deixe os outros valores como estão, e selecione Criar .

Quando a implantação começa, aparece uma notificação indicando que ela está em andamento. Outra notificação é exibida quando o serviço é implantado.

Veja o seu serviço > depois abra a tarefa.

Open created task

Na Configuração da Tarefa, você pode usar o IP Público para executar um comando curl para verificar se a API está funcionando corretamente, o que deve retornar pong.

curl http://18.118.166.206:8080/v1/document-services/ping
curl http://18.118.166.206:8080/v1/document-services/ping
SHELL

Public IP

Parabéns! Ao configurar apenas algumas opções, você implantou um aplicativo acessível publicamente no Amazon Elastic Container Service.

Perguntas frequentes

Como posso configurar a AWS para segurança de documentos?

Para configurar a AWS para segurança de documentos, você pode implantar instâncias de contêineres via Amazon ECS. Isso envolve a criação de uma Nuvem Privada Virtual (VPC), a configuração de um grupo de segurança e o uso do AWS Fargate para infraestrutura sem servidor. O IronSecureDoc pode ser integrado para garantir o gerenciamento seguro de documentos.

Qual é a finalidade de criar uma Nuvem Privada Virtual (VPC) na AWS?

Criar uma VPC na AWS permite que você execute recursos da AWS em uma rede virtual logicamente isolada. Essa configuração proporciona controle sobre seu ambiente de rede e é crucial para gerenciar a segurança de documentos por meio de serviços como o IronSecureDoc.

Por que é importante configurar um grupo de segurança para implantações do ECS?

Configurar um grupo de segurança é fundamental para controlar o tráfego de entrada e saída para suas instâncias de contêiner do ECS. Ele funciona como um firewall virtual, garantindo que apenas o tráfego autorizado chegue aos serviços do IronSecureDoc implantados na AWS.

Como faço para implantar uma instância de contêiner usando o AWS Fargate?

Para implantar uma instância de contêiner usando o AWS Fargate, primeiro você precisa criar um cluster ECS. Em seguida, defina uma definição de tarefa especificando os requisitos, como CPU, memória e configurações do contêiner. Por fim, crie um serviço dentro do cluster ECS para gerenciar a implantação do IronSecureDoc.

Qual é o papel da definição de uma tarefa no Amazon ECS?

No Amazon ECS, uma Definição de Tarefa serve como um modelo de aplicação. Ela descreve os requisitos para executar seus contêineres, como tipo de inicialização, CPU, memória e definições de contêiner. Isso é crucial para implantar aplicações como o IronSecureDoc.

Como posso gerenciar variáveis de ambiente com segurança na AWS?

Você pode gerenciar variáveis de ambiente com segurança na AWS recuperando dados confidenciais, como a chave de licença do IronSecureDoc, de buckets criptografados do Amazon S3. Essa abordagem ajuda a proteger informações confidenciais contra acesso não autorizado.

Como posso verificar se a implantação do meu serviço ECS foi bem-sucedida?

Você pode verificar a implantação do seu serviço ECS usando o endereço IP público para executar um comando curl . Por exemplo, executando curl http:// :8080/v1/document-services/ping deve retornar 'pong', indicando que o serviço IronSecureDoc está funcionando corretamente.

Preciso criar uma nova VPC e um novo Grupo de Segurança para cada implantação?

Caso não existam uma VPC e um Grupo de Segurança padrão, você deverá criá-los para garantir as configurações adequadas de rede e segurança para suas implementações do ECS. Essa configuração é essencial para o funcionamento seguro de aplicativos como o IronSecureDoc.

Curtis Chau
Redator Técnico

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 ...

Leia mais
Pronto para começar?
Versão: 2024.10 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas?
executar um exemplo Veja seu PDF ser criptografado.