O objetivo deste app é bem simples, armazenar arquivos em um local externo. No caso, usamos o S3 para armazenar estes arquivos que poderão ser lidos e baixados pelo próprio usuário. Este app é bem útil para fixar o aprendizado sobre AWS. Principalmente, S3 e AWS Lambda.
Front-end: ejs
Back-end: Node20.11v, Express, MariaDB11.2.2v e AWS
Clone o projeto
git clone https://github.com/HildodeJesus/drive_app.git
Entre no diretório do projeto e instale as dependências
npm install
Inicie o servidor
npm run start
Para rodar esse projeto, você vai precisar adicionar as seguintes variáveis de ambiente no seu .env
SECRET_SESSION
DATABASE_USER
DATABASE_PASSWORD
DATABASE_HOST
DATABASE_PORT
DATABASE_NAME
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
S3_BUCKET
É necessário editar algumas permissões no bucket do S3. Primeiramente, bloqueie o acesso publico ao bucket. Isso é importante para termos maior controle do que entra e sai do nosso bucket e termos mais segurança.
Agora, você precisará configurar as configurações de CORS , que permitirá a nossa aplicação acessar o conteúdo do Bucket do S3.
[
{
"AllowedHeaders": ["*"],
"AllowedMethods": ["GET", "HEAD", "POST", "PUT"],
"AllowedOrigins": ["*"],
"ExposeHeaders": []
}
]