Praticar de graça

🪣Entenda o Amazon S3

O S3 (Simple Storage Service) é o "HD infinito" da AWS: você joga arquivos lá e eles ficam guardados com segurança, acessíveis de qualquer lugar por uma URL. Não é um sistema de arquivos com pastas de verdade — é um armazenamento de objetos, onde cada arquivo é um objeto identificado por um nome (a "chave").

Pra que serve

Guardar qualquer coisa que não seja um banco de dados: fotos e vídeos de um app, backups, arquivos que usuários enviam, logs, e até sites estáticos (HTML/CSS/JS) servidos direto do bucket, sem servidor nenhum.

Onde se usa no mundo real

Vocabulário

Bucket
a "pasta raiz" na nuvem. O nome é único no mundo TODO — não pode existir outro igual em nenhuma conta.
Objeto
cada arquivo dentro do bucket. Tem uma chave (o caminho/nome) e o conteúdo.
Chave (key)
o nome completo do objeto, incluindo o "caminho": fotos/2026/capa.png.
Versionamento
quando ligado, o bucket guarda o histórico de cada objeto — dá pra voltar atrás se sobrescrever sem querer.
💰 Como cobra: Você paga pelo que guarda (GB por mês) e pelas requisições. Guardar alguns arquivos custa centavos — por isso é o primeiro serviço que quase todo mundo usa.

Comandos que você aprende nesta trilha

Cada um deles roda de verdade no terminal do CLImb, com a mesma saída e as mesmas mensagens de erro que a AWS devolve.

aws s3 mb

make bucket (criar bucket)

aws s3 mb s3://<nome-do-bucket>

aws s3 ls

listar buckets ou objetos

aws s3 ls                          lista todos os seus buckets
aws s3 ls s3://<bucket>            lista os objetos do bucket
aws s3 ls s3://<bucket>/<prefixo>  lista objetos com aquele prefixo

aws s3 cp

copiar arquivos de/para o S3

aws s3 cp <origem> <destino>

aws s3 rm

apagar um objeto do bucket

aws s3 rm s3://<bucket>/<chave>

aws s3 sync

sincronizar pasta local com o bucket

aws s3 sync <pasta-local> s3://<bucket>[/prefixo]

aws s3 rb

remove bucket (apagar bucket)

aws s3 rb s3://<nome-do-bucket> [--force]

aws s3api put-bucket-versioning

aws s3api put-bucket-versioning

aws s3api put-bucket-versioning --bucket <nome> --versioning-configuration Status=Enabled

aws s3api put-bucket-policy

aws s3api put-bucket-policy

aws s3api put-bucket-policy --bucket <nome> --policy file://<arquivo.json>

aws s3 website

configurar hospedagem de site estático

aws s3 website s3://<bucket> --index-document <arquivo> [--error-document <arquivo>]

aws s3api create-bucket

aws s3api create-bucket

aws s3api create-bucket --bucket <nome> [--region <região>]

aws s3api get-bucket-versioning

aws s3api get-bucket-versioning

aws s3api get-bucket-versioning --bucket <nome>

aws s3api get-bucket-policy

aws s3api get-bucket-policy

aws s3api get-bucket-policy --bucket <nome>

O que você pratica (31 atividades)

Cada atividade é um pedido de trabalho, do jeito que ele chega no dia a dia — você resolve digitando os comandos, não escolhendo alternativa.

Seu primeiro bucket

Tudo no S3 vive dentro de um bucket. Crie um bucket chamado meu-primeiro-bucket.

Site da pizzaria

Seu tio abriu uma pizzaria e quer um site. O primeiro passo é o lugar pros arquivos: crie o bucket pizzaria-do-tio.

Fotos do casamento

A galera vai subir as fotos do casamento num lugar só. Crie o bucket fotos-casamento.

Cofre de backups

Os backups do banco precisam de um lugar seguro e separado. Crie o bucket backups-producao.

Seu portfólio

Você vai publicar seu portfólio de dev. Crie o bucket portfolio-2026.

Liste seus buckets

Confira o que você tem: liste todos os seus buckets.

Suba um arquivo

Existe um relatorio.csv no seu disco local (digite 'ls' pra conferir). Envie ele pro bucket meu-primeiro-bucket.

Suba o logo

O designer mandou o logo.png. Crie o bucket assets-loja e envie o logo pra lá.

Relatório do mês

Hora de arquivar o relatorio.csv do mês. Crie relatorios-mensais e suba o arquivo.

Publique a home

Publique o index.html no site. Crie landing-page e envie o arquivo.

Liste os objetos

Liste o conteúdo do bucket meu-primeiro-bucket pra ver o arquivo lá dentro.

Quantos buckets já tenho?

Antes de criar mais um, dê uma olhada em todos os seus buckets.

O que tem no cofre?

Crie o bucket docs-fiscais, jogue o relatorio.csv nele e liste o conteúdo dele.

Baixe de volta

Agora o caminho inverso: baixe o relatorio.csv do bucket pro seu diretório atual.

Recupere um backup

Precisa do relatorio.csv de volta no seu computador. Crie cofre-relatorios, suba o arquivo e depois baixe ele.

Faxina no bucket

Apague o objeto relatorio.csv de dentro do bucket meu-primeiro-bucket.

Subiu errado

Um arquivo subiu por engano. Crie uploads-temp, suba o relatorio.csv e apague ele de dentro do bucket.

Sincronize um site inteiro

Existe uma pasta ./site no disco local com vários arquivos. Sincronize ela inteira com o bucket meu-primeiro-bucket de uma vez só.

Deploy do site da empresa

Saiu uma versão nova do site (pasta ./site). Crie site-empresa e sincronize tudo de uma vez.

Crie e destrua

Duas ações: crie um bucket chamado bucket-temporario e depois remova ele. Se tiver algo dentro, vai precisar de força extra.

Projeto cancelado

O projeto foi cancelado. Crie projeto-piloto (vazio) e remova ele.

Limpe o ambiente de testes

Crie lab-testes, jogue um arquivo dentro e remova o bucket com tudo de uma vez.

Ative o versionamento

Versionamento guarda o histórico de cada objeto. Ative o versionamento do bucket meu-primeiro-bucket usando o s3api.

Política de acesso

Aplique uma política de acesso ao bucket meu-primeiro-bucket. Existe um arquivo politica-publica.json pronto no disco local.

Hospede um site

Configure o bucket meu-primeiro-bucket como site estático, com index.html como página inicial.

Copie entre buckets

Copie um objeto de um bucket pra outro (cópia s3 → s3, sem passar pelo seu disco).

Deploy de um site

Existe a pasta ./site no disco. Crie o bucket site-deploy e sincronize a pasta inteira nele.

Apague tudo com força

Crie o temp-bucket, jogue um arquivo nele e remova o bucket com tudo dentro de uma vez.

O mesmo bucket, pelo caminho de baixo

O s3 mb é o atalho amigável; o s3api create-bucket é a API crua — mais verbosa, porém com todas as opções. Crie o bucket bucket-via-api por esse caminho.

O versionamento está mesmo ligado?

Ligar o versionamento e não conferir é pedir para descobrir tarde demais. Verifique o status de versionamento do meu-primeiro-bucket.

Quem tem acesso a este bucket?

A política de bucket é o que pode deixar seus arquivos públicos sem você perceber. Leia a política do meu-primeiro-bucket.

Continue por aqui

Ler explica. Digitar fixa. No CLImb você roda os comandos de verdade num terminal AWS simulado — o estado persiste entre eles, como na nuvem real.

Esta trilha é inteiramente gratuita — não precisa pagar nem dar cartão.

Praticar de graça
Todas as lições · Praticar no terminal · Sobre