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éer le stockage privé
Dans cette étape, vous créerez un bucket protégé. EC2 exécute le code ; S3 conserve des fichiers comme objets dans des buckets, sans dépendre d’une seule copie sur le serveur.
Entrez dans le projet.
cd /home/labex/project
Chargez PORTFOLIO_BUCKET : son nom unique est fourni, le bucket n’existe pas. Les noms sont globalement uniques dans une partition AWS.
source website.env
echo "$PORTFOLIO_BUCKET"
s3 mb crée le bucket ; s3:// indique S3. La connexion choisit us-east-1.
aws s3 mb "s3://$PORTFOLIO_BUCKET"
Lisez private-access.json : quatre true activent Block Public Access contre les permissions publiques accidentelles.
cat private-access.json
Appliquez le fichier par l’opération s3api.
aws s3api put-public-access-block --bucket "$PORTFOLIO_BUCKET" --public-access-block-configuration file://private-access.json
Relisez et confirmez les quatre valeurs true.
aws s3api get-public-access-block --bucket "$PORTFOLIO_BUCKET"
AWS View doit montrer un bucket sans objets. Gardez le bucket de référence et keep.txt. Les nouveaux buckets sont privés par défaut ; ce blocage ajoute une protection contre ACL et politiques publiques.
Envoyer et récupérer les matériaux
Dans cette étape, vous stockerez les quatre fichiers préparés : images/aura-brand.webp, images/forma-chair.webp, images/echo-record.webp et projects.json. WebP est un format d’image. Le JSON fournit les textes et références des panneaux de projet. Le code, la police et le CSS Tailwind compilé sont fournis.
cp avec --recursive copie tous les fichiers de portfolio-assets/. Les chemins relatifs deviennent des Keys ; images/ est un préfixe de nom, pas un vrai dossier S3. Attendez quatre lignes upload.
aws s3 cp portfolio-assets/ "s3://$PORTFOLIO_BUCKET/" --recursive
Dans Contents, confirmez exactement les quatre Keys, également visibles dans AWS View.
aws s3api list-objects-v2 --bucket "$PORTFOLIO_BUCKET"
Inversez le transfert pour télécharger la couverture AURA sous un autre nom local.
aws s3 cp "s3://$PORTFOLIO_BUCKET/images/aura-brand.webp" downloaded-aura.webp
cmp compare les octets ; aucune sortie signifie que les fichiers sont identiques.
cmp portfolio-assets/images/aura-brand.webp downloaded-aura.webp
Le stockage privé est complet. Le site utilise encore ses fichiers locaux. Le prochain laboratoire autorisera la lecture des trois images et du JSON depuis S3 ; gardez le bucket privé.

Nettoyer seulement vos ressources
Dans cette étape, vous supprimerez objets, bucket vide et serveur.
rm --recursive supprime les quatre objets du bucket propre que vous venez d’inspecter. Ne choisissez pas le bucket de référence.
aws s3 rm "s3://$PORTFOLIO_BUCKET/" --recursive
rb supprime ce bucket vide.
aws s3 rb "s3://$PORTFOLIO_BUCKET"
Affichez l’ID du serveur.
echo "$INSTANCE_ID"
Terminez uniquement cette instance.
aws ec2 terminate-instances --instance-ids "$INSTANCE_ID"
Attendez terminated.
aws ec2 wait instance-terminated --instance-ids "$INSTANCE_ID"
Votre bucket disparaît ; la référence keep.txt reste. Préservez le réseau. Les laboratoires suivants recréent leur environnement.
Résumé
Vous avez stocké et récupéré les matériaux privés et préservé les références pendant le nettoyage.
Références officielles : S3 objects, AWS CLI S3 file commands, Block Public Access.



