# Migrar aplicação para a AWS: crie a primeira instância EC2

> O primeiro passo para levar uma aplicação local ou de host tradicional para a AWS: uma instância EC2 simples, com Security Group e par de chaves.

- Autor: Henrylle Maia, consultor AWS
- Publicado em: 2026-10-15
- Assuntos: Migração, Custos
- URL: https://pages.formacaoaws.com.br/blog/migrar-aplicacao-para-a-aws-primeira-instancia-ec2/
- Aula de origem: "Aula 01 - Curso AWS grátis: Migrando sua aplicação para a nuvem do zero absoluto!" (https://www.youtube.com/watch?v=mF6pTpm3Kow)

Quem roda a aplicação na DigitalOcean, no Heroku ou num servidor tradicional costuma travar no mesmo ponto: por onde começar a migrar para a AWS. Aqui você cria do zero uma instância Amazon EC2, com as portas certas liberadas e a chave de acesso guardada, pronta para receber a sua aplicação.

Uma das principais dores que ouço dos alunos é como dar o primeiro passo e levar a aplicação para a nuvem. Minha resposta é simples: **mova a aplicação do jeito que está**. Se hoje você tem um host seu, crie um host seu na AWS. A instância EC2 nada mais é do que uma máquina virtual, e você começa pela configuração mais simples.

## O cenário: uma aplicação que só roda na sua máquina

Para ser objetivo, usei um projeto de exemplo em .NET Core, com uns poucos textos alterados ("Seja bem-vindo", "exemplo básico"). Sem banco de dados, de propósito, para o projeto ficar o mais simples possível.

Localmente, um `dotnet run` sobe a aplicação em HTTP, sem HTTPS, na porta 5000 do localhost. O código também está num repositório no GitHub. O objetivo é pegar o que roda local e fazer rodar na AWS, na porta 80.

**Fluxo:** Aplicação local (.NET Core na porta 5000) → Amazon EC2 (Amazon Linux, t2.micro) → Security Group (SSH 22 e HTTP 80) → Par de chaves (arquivo .pem guardado)

Você só precisa de uma conta na AWS. Se a sua stack for Node, Ruby, Java ou PHP, o que muda são as configurações adequadas à sua stack, que você faz conectando na máquina por SSH. Aqui eu cubro só o primeiro passo, a máquina.

## Passo 1: escolha a região e abra o Launch Instance

Entre no console da AWS, digite EC2 na busca (é a área de servidores virtuais) e clique em **Launch Instance**. O console tem muitas configurações; aqui o objetivo é só rodar uma instância.

Antes de avançar, olhe a região em que a instância vai rodar. Eu uso a Virgínia, que tem custo mais reduzido, assim como Ohio. Minha recomendação é começar a trabalhar nessas regiões e não levar a aplicação intuitivamente para São Paulo, principalmente por causa do custo.

## Passo 2: imagem e tipo da instância

O primeiro passo do assistente é escolher a imagem, o sistema operacional da máquina. Há Amazon Linux (mantido pela própria AWS), Red Hat, Ubuntu, Windows e outros. Eu prefiro as imagens da própria AWS, então uso o Amazon Linux. Se você não se sente confortável com ele, pode usar o Ubuntu, por exemplo.

![A lista de imagens do assistente: Amazon Linux 2, Amazon Linux AMI, Red Hat, SUSE e Ubuntu, todas marcadas como elegíveis ao free tier](https://pages.formacaoaws.com.br/blog/assets/posts/migrar-aplicacao-para-a-aws-primeira-instancia-ec2/escolher-ami.webp)

Em seguida vem o tipo da instância. Procure uma na categoria **Free Tier**, a camada gratuita que a AWS dá durante o primeiro ano da conta. Escolhi a **t2.micro**, que aparece com o selo "Free tier eligible" na tela.

![A lista de tipos de instância: a t2.micro marcada, com o selo Free tier eligible, 1 vCPU e 1 GiB de memória](https://pages.formacaoaws.com.br/blog/assets/posts/migrar-aplicacao-para-a-aws-primeira-instancia-ec2/tipo-t2-micro.webp)

> **Importante:** as telas são da gravação, de 2019. O assistente de hoje pode ter outro layout e as regras do free tier mudam. Confira o que está incluído na página oficial da AWS antes de contar com a camada gratuita.

## Passo 3: configuração, armazenamento e nome

Na tela de configuração da instância, o número de instâncias é uma. A rede (VPC) eu deixei sem detalhar: seria muito para um primeiro passo e foge do que queremos mostrar aqui.

Siga adiante e defina:

- **Armazenamento:** 10 GB para a máquina.
- **Nome:** `migrando para aws`.

## Passo 4: o Security Group, ou como você fala com a instância

O Security Group é a parte importante: ele define como você consegue se comunicar com a máquina. Precisamos de duas formas de comunicação:

- **SSH (porta 22):** para você se conectar na instância e fazer as configurações que a sua stack pede. No meu caso, preparar a máquina para rodar .NET Core.
- **HTTP (porta 80):** a porta onde queremos que a aplicação rode, aberta para todos.

Crie um grupo novo, dê um nome (eu usei `migrando_para_aws_sg`) e uma descrição (as permissões nas portas 80 e 22), e adicione as duas regras.

> **Importante:** na demonstração eu deixei o SSH aberto para qualquer origem, só para simplificar. Por segurança, você pode usar a opção **My IP**: o console devolve o seu IP e a regra fica restrita a você. A porta 80 eu deixei aberta para todos.

Clique em **Review and Launch**. A tela de revisão mostra o grupo como ficou.

![A revisão antes do lançamento: o grupo migrando_para_aws_sg com a regra de SSH na porta 22 e a de HTTP na porta 80](https://pages.formacaoaws.com.br/blog/assets/posts/migrar-aplicacao-para-a-aws-primeira-instancia-ec2/security-group.webp)

## Passo 5: o par de chaves e o lançamento

Antes de lançar, o console pede um par de chaves. É a chave de segurança que você vai usar para se conectar na instância por SSH. Escolha criar um novo par, dê um nome a ela e clique em **Download Key Pair**.

![Create a new key pair, o nome da chave, o botão Download Key Pair e o aviso de que o arquivo .pem precisa ser baixado e guardado em local seguro](https://pages.formacaoaws.com.br/blog/assets/posts/migrar-aplicacao-para-a-aws-primeira-instancia-ec2/par-de-chaves.webp)

O próprio console avisa na janela: você precisa baixar o arquivo da chave privada (`.pem`) antes de continuar, guardá-lo em um lugar seguro e acessível, e não vai conseguir baixá-lo de novo depois. Guarde o arquivo, depois clique em **Launch Instances**.

Nesse momento a AWS começa a iniciar a instância, e o primeiro passo está feito: uma máquina simples na nuvem, no lugar do host.

## Checklist

- Conta da AWS criada e aplicação que você quer migrar rodando local, com o código num repositório.
- Região escolhida pensando no custo: Virgínia ou Ohio, não São Paulo logo de cara.
- Imagem do sistema operacional definida (Amazon Linux, ou Ubuntu se preferir).
- Tipo de instância dentro do Free Tier, conferido na página oficial da AWS.
- Armazenamento e nome da instância definidos.
- Security Group com a porta 22 (SSH) e a porta 80 (HTTP).
- SSH restrito ao seu IP com a opção My IP, quando possível.
- Arquivo `.pem` baixado e guardado em local seguro.

Se você quer ir para a AWS, o mais importante é dar o primeiro passo, e ele é este: uma máquina simples, no lugar do host que você já tem. O próximo passo é fazer o código rodar nela. Se quiser ajuda para levar a sua aplicação para a AWS, agende uma conversa.
