DEV Community

Romero Dias
Romero Dias

Posted on

Utilizando o S3 com LocalStack via Docker Compose

๐Ÿ› ๏ธ Utilizando o S3 com LocalStack via Docker Compose

๐Ÿ“Œ Objetivo

Este guia ensina como:

  • Subir o LocalStack usando Docker Compose
  • Criar buckets S3 locais
  • Interagir com o S3 usando a AWS CLI
  • Usar o S3 local em sua aplicaรงรฃo (ex: Java/Spring Boot)

โœ… Prรฉ-requisitos

  • Docker e Docker Compose instalados
  • AWS CLI instalado
  • Editor de texto ou IDE

๐Ÿ“ Estrutura do Projeto

โ”œโ”€โ”€ docker-compose.yml
โ”œโ”€โ”€ localstack/
โ””โ”€โ”€ README.md (opcional)


๐Ÿงฑ 1. Criar o docker-compose.yml

version: '3.8'

services:
  localstack:
    image: localstack/localstack:latest
    container_name: localstack
    ports:
      - "4566:4566"
    environment:
      - SERVICES=s3
      - DEBUG=1
      - DATA_DIR=/tmp/localstack/data
      - AWS_ACCESS_KEY_ID=test
      - AWS_SECRET_ACCESS_KEY=test
      - DEFAULT_REGION=us-east-1
    volumes:
      - ./localstack:/tmp/localstack
      - /var/run/docker.sock:/var/run/docker.sock
Enter fullscreen mode Exit fullscreen mode

2. Subir o ambiente

docker-compose up -d

3. Configurar a AWS CLI

Execute:

aws configure

Use credenciais fictรญcias:

AWS Access Key ID [None]: test
AWS Secret Access Key [None]: test
Default region name [None]: us-east-1
Default output format [None]: json
Enter fullscreen mode Exit fullscreen mode

4. Criar e manipular buckets S3

aws --endpoint-url=http://localhost:4566 s3 mb s3://meu-bucket
Enter fullscreen mode Exit fullscreen mode

Listar buckets:

aws --endpoint-url=http://localhost:4566 s3 ls
Enter fullscreen mode Exit fullscreen mode

Listar arquivos no bucket:

aws --endpoint-url=http://localhost:4566 s3 ls s3://meu-bucket/
Enter fullscreen mode Exit fullscreen mode

5. Configurar aplicaรงรฃo Java/Spring Boot

No application.properties:

cloud.aws.credentials.accessKey=test
cloud.aws.credentials.secretKey=test
cloud.aws.region.static=us-east-1
cloud.aws.s3.endpoint=http://localhost:4566
Enter fullscreen mode Exit fullscreen mode

Conclusรฃo.

Com esse setup, vocรช consegue simular o serviรงo S3 localmente com o LocalStack para testes e desenvolvimento, sem custos e com agilidade.

Top comments (0)