Stockez les matériaux du portfolio dans S3

AWSBeginner
Pratiquer maintenant

Introduction

Créez un bucket privé, envoyez images et projets, récupérez une copie identique et nettoyez vos ressources.

Terminez les laboratoires précédents du portfolio. Cet environnement fournit ses propres ressources et les capacités antérieures nécessaires. Réutilisez les connaissances, pas les instances, fichiers ou identifiants précédents.

Lien avec la certification

Certification Tâches Pratique
AWS Certified Cloud Practitioner (CLF-C02) Task 3.6 Utiliser le stockage d’objets S3 séparément du calcul EC2.

Vue d’ensemble

Créez un bucket privé, envoyez images et projets, récupérez une copie identique et nettoyez vos ressources.

Créer le stockage privé

Dans cette étape, vous créerez un bucket privé pour les ressources du portfolio et appliquerez ses protections publiques.

EC2 exécute le site. Amazon S3 conserve les fichiers comme objets dans un bucket, un conteneur nommé. Les ressources sont ainsi séparées du serveur. Ce labo fournit un nouveau site et des fichiers locaux ; vous créerez le bucket.

Entrez dans le dossier préparé :

cd /home/labex/project

Chargez les identifiants et affichez le nom du bucket :

source website.env
echo "$PORTFOLIO_BUCKET"

PORTFOLIO_BUCKET est le nom unique fourni ; le bucket n’existe pas encore. S3 exige des noms uniques : utilisez ce nom plutôt qu’un nom courant comme portfolio.

Les commandes s3 facilitent les opérations sur les fichiers. mb crée un bucket et s3:// désigne un emplacement S3 :

aws s3 mb "s3://$PORTFOLIO_BUCKET"

Attendez la confirmation make_bucket. La connexion utilise us-east-1, la Region du nouveau bucket. Repérez son nom dans AWS View.

Le nouveau stockage est privé par défaut. Block Public Access protège contre les permissions publiques accidentelles. Lisez le JSON fourni : ses quatre réglages doivent être true :

cat private-access.json

Chaque true active une protection. Les commandes s3api exposent des opérations précises, dont les réglages d’accès. Comme avec launch.json, file:// lit le fichier local sans saisir chaque valeur séparément :

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

La mise à jour réussie rend l’invite sans sortie. Relisez les réglages depuis S3 pour vérifier leur enregistrement :

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

Vérifiez quatre valeurs true et No objects dans AWS View. Le bucket de référence contient keep.txt, sans lien avec la tâche ; gardez-le intact. Votre stockage est prêt.

Envoyer et récupérer les ressources

Dans cette étape, vous stockerez trois couvertures et la liste des projets, puis récupérerez AURA pour comparer ses octets avec l’original.

portfolio-assets/ contient quatre fichiers. WebP est un format d’image ; projects.json contient titres, descriptions et références d’images. Le site et les visuels sont fournis pour vous concentrer sur le stockage.

Fichier Utilisation
images/aura-brand.webp AURA
images/forma-chair.webp FORMA
images/echo-record.webp ECHO
projects.json Titres, descriptions et références

La clé est le nom de l’objet dans le bucket. images/aura-brand.webp utilise le préfixe images/, sans vrai dossier S3. cp copie les fichiers et --recursive copie tout le dossier en conservant les chemins relatifs comme clés :

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

Attendez quatre lignes upload. Listez ensuite les objets avec s3 ls ; --recursive inclut les clés sous images/ :

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

Les quatre lignes indiquent date, taille et clé. Confirmez les trois images et projects.json ; l’ordre et les dates exactes n’importent pas. AWS View affiche les mêmes noms.

Le bucket contient trois couvertures et projects.json ; les identifiants varient.

Inversez la copie pour récupérer AURA sous un autre nom local :

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

cmp compare les octets. Comparez l’original avec le fichier récupéré :

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

Aucune sortie et le retour de l’invite indiquent des fichiers identiques. Vous avez stocké puis récupéré la couverture sans modification. Sinon, vérifiez la clé et renvoyez l’original.

Le stockage privé est terminé. Le site lit encore ses fichiers locaux : envoyer vers S3 ne change pas la page. Le prochain labo repart avec des ressources équivalentes déjà stockées pour apprendre à autoriser leur lecture par l’application.

Résumé

Vous avez créé du stockage S3 privé, appliqué les protections publiques, envoyé trois couvertures et une liste, puis récupéré une copie identique. Vous distinguez les objets stockés de l’application qui les utilisera.

Références officielles : S3 objects, AWS CLI S3 file commands, Block Public Access.