Getting Started with Cloud Shell & Gcloud
1. Overview
Google Cloud Shell provides you with command-line access to computing resources hosted on Google Cloud Platform and is available now in the Google Cloud Platform Console. Cloud Shell makes it easy for you to manage your Cloud Platform Console projects and resources without having to install the Google Cloud SDK and other tools on your system. With Cloud Shell, the Cloud SDK gcloud
command and other utilities you need are always available when you need them.
In this codelab, you will learn how to connect to computing resources hosted on Google Cloud Platform via the web. You will learn how to use Cloud Shell and the Cloud SDK gcloud
command.
This tutorial is adapted from https://cloud.google.com/cloud-shell/docs/quickstart and https://cloud.google.com/sdk/gcloud/
What you’ll learn
- How to connect to computing resources hosted on Google Cloud Platform.
- How to use
gcloud
commands
What you’ll need
- Familiarity with standard Linux text editors such as Vim, EMACs or Nano
2. Setup and Requirements
Self-paced environment setup
If you don’t already have a Google Account (Gmail or Google Apps), you must create one. Sign-in to Google Cloud Platform console (console.cloud.google.com) and create a new project:
Remember the project ID, a unique name across all Google Cloud projects (the name above has already been taken and will not work for you, sorry!). It will be referred to later in this codelab as PROJECT_ID
.
Next, you’ll need to enable billing in the Cloud Console in order to use Google Cloud resources.
Running through this codelab shouldn’t cost you more than a few dollars, but it could be more if you decide to use more resources or if you leave them running (see “cleanup” section at the end of this document).
Launch Cloud Shell
Activate Google Cloud Shell
From the GCP Console click the Cloud Shell icon on the top right toolbar:
Then click “Start Cloud Shell”:
It should only take a few moments to provision and connect to the environment:
This virtual machine is loaded with all the development tools you’ll need. It offers a persistent 5GB home directory, and runs on the Google Cloud, greatly enhancing network performance and authentication. Much, if not all, of your work in this lab can be done with simply a browser or your Google Chromebook.
Once connected to the cloud shell, you should see that you are already authenticated and that the project is already set to your PROJECT_ID.
Run the following command in the cloud shell to confirm that you are authenticated:
gcloud auth list
Command output
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
Command output
[core] project = <PROJECT_ID>
If it is not, you can set it with this command:
gcloud config set project <PROJECT_ID>
Command output
Updated property [core/project].
3. Use the command line
After Cloud Shell launches, you can use the command line to invoke the Cloud SDK gcloud
command or other tools available on the virtual machine instance. You can also use your $HOME
directory in persistent disk storage to store files across projects and between Cloud Shell sessions. Your $HOME
directory is private to you and cannot be accessed by other users.
Let’s get started by taking a look at the commands available to you. Try this:
gcloud -h
Simple usage guidelines are available by adding -h
onto the end of any gcloud
invocation. More verbose help can be obtained by appending the --help
flag, or executing gcloud
help COMMAND
.
Give it a try:
gcloud config --help
Now try
gcloud help config
You will notice that gcloud config --help
and gcloud help config
commands are equivalent—both give long, detailed help.
4. Using gcloud commands
Let’s try to view the list of configurations in our environment. From reading the long, detailed help in our previous step, we know we can use the command gcloud list
.
gcloud config list
You may wonder whether there are other properties that were not set. You can see all properties by calling:
gcloud config list --all
Summary
In this step, you launched Cloud Shell and called some simple gcloud
commands.