Guarde materiais do portfólio no S3

AWSBeginner
Pratique Agora

Introdução

Crie um bucket privado, envie imagens e projetos, recupere uma cópia idêntica e limpe seus recursos.

Conclua os laboratórios anteriores do portfólio. Este ambiente fornece seus próprios recursos e capacidades anteriores necessárias. Reutilize conhecimentos, não instâncias, arquivos ou credenciais anteriores.

Relação com certificação

Certificação Tarefas Prática
AWS Certified Cloud Practitioner (CLF-C02) Task 3.6 Usar armazenamento de objetos S3 separado da computação EC2.

Visão geral

Crie um bucket privado, envie imagens e projetos, recupere uma cópia idêntica e limpe seus recursos.

Crie armazenamento privado

Nesta etapa, você criará um bucket privado para os materiais e aplicará sua proteção contra acesso público.

EC2 executa o site. Amazon S3 guarda arquivos como objetos em um bucket, um contêiner com nome. Assim os materiais ficam separados do servidor. Este laboratório fornece outro site e arquivos locais; você criará o bucket.

Entre no projeto preparado:

cd /home/labex/project

Carregue os identificadores e mostre o nome do bucket:

source website.env
echo "$PORTFOLIO_BUCKET"

PORTFOLIO_BUCKET é o nome exclusivo do exercício; o bucket ainda não existe. S3 exige nomes únicos, então use o fornecido em vez de um comum como portfolio.

Os comandos s3 facilitam operações com arquivos. mb cria um bucket e s3:// identifica uma localização S3:

aws s3 mb "s3://$PORTFOLIO_BUCKET"

Espere a confirmação make_bucket. A conexão usa us-east-1, a Region do novo bucket. Encontre seu nome no AWS View.

O armazenamento novo é privado por padrão. Block Public Access protege contra permissões públicas acidentais. Leia o JSON fornecido: os quatro ajustes devem ser true:

cat private-access.json

Cada true ativa uma proteção. s3api expõe operações específicas, incluindo acesso. Como em launch.json, file:// lê a configuração local sem informar cada valor separadamente:

aws s3api put-public-access-block \
  --bucket "$PORTFOLIO_BUCKET" \
  --public-access-block-configuration file://private-access.json

Uma atualização correta retorna ao prompt sem saída. Leia os ajustes no S3 para confirmar que foram salvos:

aws s3api get-public-access-block --bucket "$PORTFOLIO_BUCKET"

Confirme quatro valores true e No objects no AWS View. O bucket de referência contém keep.txt, dados independentes; preserve-o. Seu armazenamento está pronto.

Envie e recupere os materiais

Nesta etapa, você guardará três capas e a lista de projetos, recuperará AURA e comparará seus bytes com o original.

portfolio-assets/ contém quatro arquivos. WebP é um formato de imagem; projects.json contém títulos, descrições e referências. Site e arte são fornecidos para você se concentrar no armazenamento.

Arquivo Uso no site
images/aura-brand.webp AURA
images/forma-chair.webp FORMA
images/echo-record.webp ECHO
projects.json Títulos, descrições e referências

A key é o nome do objeto no bucket. images/aura-brand.webp tem o prefixo images/, não uma pasta real no S3. cp copia arquivos e --recursive copia o diretório inteiro mantendo os caminhos relativos como keys:

aws s3 cp portfolio-assets/ "s3://$PORTFOLIO_BUCKET/" --recursive

Espere quatro linhas upload. Liste os objetos com s3 ls; --recursive inclui as keys sob images/:

aws s3 ls "s3://$PORTFOLIO_BUCKET/" --recursive

As quatro linhas mostram data, tamanho e key. Confirme as três imagens e projects.json; ordem e horário exato não importam. AWS View mostra os mesmos nomes.

O bucket contém três capas e projects.json; identificadores variam.

Inverta a cópia para recuperar AURA com outro nome local:

aws s3 cp "s3://$PORTFOLIO_BUCKET/images/aura-brand.webp" downloaded-aura.webp

cmp compara bytes. Compare o original com o arquivo recuperado:

cmp portfolio-assets/images/aura-brand.webp downloaded-aura.webp

Sem saída e com o prompt de volta, os arquivos são iguais. Você armazenou e recuperou a capa real sem mudanças. Se diferirem, confira a key e envie o original novamente.

O armazenamento privado está completo. O site ainda lê arquivos locais: enviar ao S3 não muda a página. O próximo laboratório começa de novo com materiais equivalentes já armazenados e ensina a autorizar a leitura pela aplicação.

Resumo

Você criou S3 privado, aplicou proteção pública, enviou três capas e uma lista e recuperou uma cópia igual. Distinguiu objetos armazenados da aplicação que os utilizará.

Referências oficiais: S3 objects, AWS CLI S3 file commands, Block Public Access.