Giter Club home page Giter Club logo

s3-bucket-localstack-demo's Introduction

Simulação de bucket S3 sendo executado localmente

Durante o desenvolvimento em cloud é comum a necessidade de testar recursos de cloud de forma local, um exemplo é o bucket S3 da Amazon, como é um recurso pago, não seria viável ter uma aplicação executando localmente apontando para recursos existentes, ocasionando em gastos desnecessários, uma boa forma de realizar esses testes é utilizar um bucket "fake", neste projeto irei demonstrar duas possibilidades de uso, localstak e minio.

📋 Pré-requisitos

  • Java versão: 1.8
  • Dokcer versão: 20.10.8
  • Docker-compose versão: 1.29.2

🔧 Instalação

1 - Subir as intâncias dos buckets, localstack S3 e Minio. Navegar até o repositório raiz do projeto: ./s3-bucket-localstack-demo.

dokcer-compose up

Após subir as imagens, será possível escolher qual ferramenta deseja utilizar para simular o buket S3, localstak ou minio. O localstak é comumente utilizado, possuindo mais de 45k de github⭐, porém o minio possui uma interface muito intuitiva, podendo ser acessado pelo link: http://localhost:9001/

2 - Execute a aplicação java em sua IDE preferida, nesse projeto foi utilizado o Spring Tool Suite 4 (version: 4.17.1).

3 - Configure spring.profiles.active de acordo com o bucket que deseja testar, sendo:

  • Minio: spring.profiles.active=minio
  • LocakStack: spring.profiles.active=s3

⚙️ Executando

1 - Upload de um arquivo no bucket:

curl --request POST \
  --url http://localhost:8080/s3/upload \
  --header 'Content-Type: multipart/form-data' \
  --form 'file=@C:\Users\<myUser>\file_test.txt'

2 - Download de um arquivo existente no bucket

curl --request GET \
  --url http://localhost:8080/s3/download/{keyId}

s3-bucket-localstack-demo's People

Contributors

afarms avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.