mini lab : Cloud Storage : 1 (Solution)

mini lab : Cloud Storage : 1 (Solution)

Overview

  • Labs are timed and cannot be paused. The timer starts when you click Start Lab.

  • The included cloud terminal is preconfigured with the gcloud SDK.

  • Use the terminal to execute commands and then click Check my progress to verify your work.

Challenge scenario

  • You have an existing Cloud Storage bucket named qwiklabs-gcp-01-3a0f3f7313e1-bucket that contains the following files necessary for a simple static website:

    • index.html (The main landing page)

    • error.html (Custom error page)

    • style.css

    • logo.jpg

  • Currently, the bucket is not configured for website hosting. Your task is to update the configuration to make this website publicly accessible.

  • As of now, there is no need to create a load balancer or CDN to redirect the request to the cloud storage bucket.

Click Check my progress to verify the objective.

Configure a bucket for website hosting


Solution of Lab

curl -LO raw.githubusercontent.com/ePlus-DEV/storage/refs/heads/main/labs/mini%20lab%20:%20Cloud%20Storage%20:%201/lab.sh
source lab.sh

Script Alternative

export PROJECT=$(gcloud projects list --format="value(PROJECT_ID)")

gcloud storage buckets update gs://$PROJECT-bucket --no-uniform-bucket-level-access

gcloud storage buckets update gs://$PROJECT-bucket --web-main-page-suffix=index.html --web-error-page=error.html

gcloud storage objects update gs://$PROJECT-bucket/index.html --add-acl-grant=entity=AllUsers,role=READER

gcloud storage objects update gs://$PROJECT-bucket/error.html --add-acl-grant=entity=AllUsers,role=READER