Projeto da disciplina de Redes de Computadores, que consiste em criar uma aplicação simples utilizando qualquer framework e realizar o deploy na AWS utilizando o serviço EC2. A aplicação será acessível através de um domínio e terá as seguintes funcionalidades: fazer o upload de um arquivo, enviar esse arquivo para um bucket no Amazon S3 e enviar uma mensagem para uma fila do Amazon SQS assim que o arquivo for enviado com sucesso.
Neste projeto, vamos criar uma aplicação web que permitirá aos usuários fazer o upload de arquivos. Os arquivos enviados serão armazenados no Amazon S3, e uma mensagem será enviada para uma fila do Amazon SQS para notificar o sucesso do upload.
Antes de começar, você precisará ter o seguinte configurado:
- Uma conta AWS (Amazon Web Services).
- Um ambiente de desenvolvimento configurado com as credenciais da AWS.
- Um domínio registrado ou configurado para o seu aplicativo.
-
Configuração da AWS:
Certifique-se de ter as credenciais da AWS configuradas em seu ambiente de desenvolvimento. Isso pode ser feito configurando as variáveis de ambiente ou usando as configurações padrão do AWS CLI.
-
Configuração do Amazon S3:
Crie um bucket no Amazon S3 onde os arquivos enviados serão armazenados. Anote o nome do bucket para configuração posterior.
-
Configuração do Amazon SQS:
Crie uma fila no Amazon SQS para receber as mensagens de notificação de sucesso do upload. Anote o URL da fila para configuração posterior.
-
Configuração do Domínio:
Configure seu domínio para apontar para o IP público da sua instância EC2 após o deploy.
-
Crie uma aplicação web simples utilizando o framework de sua escolha. Certifique-se de incluir a funcionalidade de upload de arquivos na aplicação.
-
Implemente a lógica para enviar os arquivos para o Amazon S3 após o upload bem-sucedido.
-
Implemente a lógica para enviar uma mensagem para a fila do Amazon SQS com informações sobre o arquivo enviado com sucesso.
-
Configure o domínio para apontar para o IP público da instância EC2 após o deploy.
-
Crie uma instância EC2 na AWS usando a imagem desejada (por exemplo, uma imagem Linux).
-
Configure a instância EC2 com as permissões necessárias para acessar o Amazon S3 e o Amazon SQS.
-
Implante sua aplicação na instância EC2 e configure-a para ser executada como um serviço web.
-
Abra as portas necessárias na instância EC2 para permitir o tráfego HTTP ou HTTPS, dependendo da configuração do seu aplicativo.
-
Configure o seu domínio para apontar para o IP público da instância EC2.
Após o deploy da aplicação na AWS, acesse o seu domínio e teste a funcionalidade de upload de arquivos. Verifique se os arquivos são armazenados no Amazon S3 e se uma mensagem é enviada para a fila do Amazon SQS após o upload bem-sucedido.