This guide walks you through setting up a free bucket to serve a static website through a custom domain name using Google Cloud Platform services. Sign in to Google Cloud Platform, navigate to service and create a new public DNS zone: Cloud DNS By default it will have a (Nameserver) and a (Start of Authority) records: NS SOA Go to you domain registrar, in my case I purchased a domain name from (super cheap). Add the nameserver names that were listed in your record: GoDaddy NS PS: It can take some time for the changes on GoDaddy to propagate through to Google Cloud DNS. Next, verify you own the domain name using the . Many methods are available (HTML Meta data, Google Analytics, etc). The easiest one is DNS verification through a TXT record: Open Search Console Add the TXT record to your DNS zone created earlier: DNS changes might take some time to propagate: Once you have verified domain, you can create a bucket with under the verified domain name. The storage class should be “ ” (geo redundant bucket, in case of outage) : Cloud Storage Multi-Regional Copy the website static files to the bucket using the following command: gsutil rsync -R . gs://www.serverlessmovies.com/ After the upload completes, your static files should be available on the bucket as follows: Next, make the files publicly accessible by adding entity with role to the bucket permissions: allUsers Object Viewer Once shared publicly, a link icon appears for each object in the column. You can click on this icon to get the URL for the object: public access Verify that content is served from the bucket by requesting the link in you browser: index.html Next, set the main page to be from “ section**:** index.html Edit website configuration” Now, we need to map our domain name with the bucket we created earlier. Create a record that points to CNAME c.storage.googleapis.com: Point your browser to your domain name, your website should be served: While our solution works like a charm, we can access our content through HTTP only (Google Cloud Storage only supports HTTP when using it through a record). In the next post, we will serve our content through a custom domain over SSL using a (CDN). CNAME Content Delivery Network Drop your comments, feedback, or suggestions below — or connect with me directly on Twitter . **@**mlabouardy