Projeto Backend desenvolvido do zero com Java 21. A aplicação permite gerar QR Codes e armazená-los automaticamente em um bucket S3 da AWS. O projeto está containerizado com Docker para facilitar testes e deploys locais.
- Java 21
- Spring Boot
- AWS S3
- Docker
- REST API
- Java 21
- Docker instalado e funcionando
- Conta na AWS com permissões para criar buckets e gerar chaves de acesso
Crie um arquivo .env na raiz do projeto com as seguintes variáveis:
AWS_ACCESS_KEY_ID=SEU_ACCESS_KEY
AWS_SECRET_ACCESS_KEY=SUA_SECRET_KEY- Acesse o IAM da AWS
- Vá em Users e selecione seu usuário.
- Aba Security credentials → clique em Create access key
- Escolha Use cases: Command Line Interface (CLI) e confirme.
- Baixe o CSV e não perca esse arquivo, a Secret só aparece uma vez.
- Garanta que o usuário tenha a política
AmazonS3FullAccess.
1. Crie um bucket na AWS S3 com nome disponível (ex: qrcode-generatorz-storage) na região desejada (ex: us-east-1).
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicRead",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::qrcode-generatorz-storage/*"
}
]
}ENV AWS_REGION=us-east-1
ENV AWS_S3_BUCKET_NAME=qrcode-generatorz-storagedocker build -t qrcode-generator:1.0 ./dockerdocker run --env-file .env -p 8080:8080 qrcode-generator:1.0Gerar QR Code:
POST http://localhost:8080/qrcode
Content-Type: application/json
{
"text": "https://meusite.com"
}Este projeto está sob a licença MIT. Sinta-se livre para usar e contribuir!
Contribuições são bem-vindas! Sinta-se livre para abrir issues ou enviar PRs.