Einführung
Erstelle einen privaten Bucket, lade Bilder und Projekte hoch, hole eine identische Kopie und bereinige deine Ressourcen.
Schließe die vorherigen Portfolio-Labs ab. Dieses Lab liefert eigene Ressourcen und benötigte frühere Fähigkeiten. Übernimm Wissen, keine alten Instanzen, Dateien oder Zugangsdaten.
Zertifizierungsbezug
| Zertifizierung | Aufgaben | Übung |
|---|---|---|
| AWS Certified Cloud Practitioner (CLF-C02) | Task 3.6 | S3-Objektspeicher getrennt von EC2-Compute nutzen. |
Überblick

Privaten Speicher erstellen
In diesem Schritt erstellst du einen geschützten Bucket. EC2 führt Code aus; S3 speichert Dateien als Objekte in Buckets, unabhängig von einer einzigen Serverkopie.
Wechsle zum Projekt.
cd /home/labex/project
Lade PORTFOLIO_BUCKET: der eindeutige Name ist vorbereitet, der Bucket noch nicht vorhanden. Namen müssen innerhalb einer AWS-Partition global eindeutig sein.
source website.env
echo "$PORTFOLIO_BUCKET"
s3 mb erstellt den Bucket, s3:// bezeichnet S3. Vorbereitet ist us-east-1.
aws s3 mb "s3://$PORTFOLIO_BUCKET"
Lies private-access.json: vier true aktivieren Block Public Access gegen versehentliche öffentliche Berechtigungen.
cat private-access.json
Wende die Datei mit s3api an.
aws s3api put-public-access-block --bucket "$PORTFOLIO_BUCKET" --public-access-block-configuration file://private-access.json
Lies die Einstellungen und prüfe vier true.
aws s3api get-public-access-block --bucket "$PORTFOLIO_BUCKET"
AWS View zeigt deinen leeren Bucket. Bewahre Referenz-Bucket und keep.txt. Neuer Speicher ist standardmäßig privat; diese Sperre schützt zusätzlich gegen öffentliche ACLs und Richtlinien.
Materialien hochladen und abrufen
In diesem Schritt speicherst du vier vorbereitete Dateien: images/aura-brand.webp, images/forma-chair.webp, images/echo-record.webp und projects.json. WebP ist ein Bildformat. JSON enthält Texte und Bildverweise für Projektdetails. Anwendung, Schrift und kompiliertes Tailwind-CSS sind bereitgestellt.
cp mit --recursive kopiert alle Dateien in portfolio-assets/. Relative Pfade werden zu Keys; images/ ist ein Namenspräfix und kein echtes S3-Verzeichnis. Erwarte vier upload-Zeilen.
aws s3 cp portfolio-assets/ "s3://$PORTFOLIO_BUCKET/" --recursive
Prüfe genau die vier Keys in Contents und AWS View.
aws s3api list-objects-v2 --bucket "$PORTFOLIO_BUCKET"
Kehre die Kopierrichtung um, um das AURA-Bild unter einem anderen lokalen Namen herunterzuladen.
aws s3 cp "s3://$PORTFOLIO_BUCKET/images/aura-brand.webp" downloaded-aura.webp
cmp vergleicht Bytes; ohne Ausgabe sind beide Dateien gleich.
cmp portfolio-assets/images/aura-brand.webp downloaded-aura.webp
Die private Speicherung ist abgeschlossen. Die Website nutzt noch ihre lokalen Dateien. Im nächsten Lab erlaubst du das Lesen der drei Bilder und der Projektliste aus S3; öffne den Bucket nicht öffentlich.

Nur eigene Ressourcen bereinigen
In diesem Schritt entfernst du Objekte, leeren Bucket und Server.
rm --recursive entfernt die vier Objekte aus deinem eben geprüften Bucket. Wähle niemals den Referenz-Bucket.
aws s3 rm "s3://$PORTFOLIO_BUCKET/" --recursive
rb löscht diesen leeren Bucket.
aws s3 rb "s3://$PORTFOLIO_BUCKET"
Zeige die Server-ID.
echo "$INSTANCE_ID"
Beende nur diese Instanz.
aws ec2 terminate-instances --instance-ids "$INSTANCE_ID"
Warte auf terminated.
aws ec2 wait instance-terminated --instance-ids "$INSTANCE_ID"
Dein Bucket verschwindet, keep.txt bleibt. Bewahre das Netzwerk. Die folgenden Labs liefern eigene Ressourcen.
Zusammenfassung
Du hast private Materialien gespeichert und unverändert zurückgeholt, dann nur deine Ressourcen entfernt.
Offizielle Quellen: S3 objects, AWS CLI S3 file commands, Block Public Access.



