This is Docker image for the Google Cloud SDK.
The :latest tag of this image is Debian-based and includes default command
line tools of Google Cloud SDK (gcloud, gsutil, bq) as well as all
additional components.
google/cloud-sdk:latest,google/cloud-sdk:VERSION: (large image with additional components pre-installed, Debian-based)google/cloud-sdk:slim,google/cloud-sdk:VERSION-slim: (smaller image with no components pre-installed, Debian-based)google/cloud-sdk:alpine,google/cloud-sdk:VERSION-alpine: (smallest image with no additional components installed, Alpine-based)
→ Check out Docker Hub for available tags.
To use this image, pull from Docker Hub, run the following command:
docker pull google/cloud-sdk:latest
Verify the install
docker run -ti google/cloud-sdk:latest gcloud version
Google Cloud SDK 159.0.0or use a particular version number:
docker run -ti google/cloud-sdk:160.0.0 gcloud versionThen, authenticate by running:
docker run -ti --name gcloud-config google/cloud-sdk gcloud auth login
Once you authenticate successfully, credentials are preserved in the volume of
the gcloud-config container.
To list compute instances using these credentials, run the container with
--volumes-from:
docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gcloud compute instances list --project your_project
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
instance-1 us-central1-a n1-standard-1 10.240.0.2 8.34.219.29 RUNNING
⚠️ Warning: Thegcloud-configcontainer now has a volume containing your Google Cloud credentials. Do not usegcloud-configvolume in other containers.
By default, all gcloud components
are installed on the default
images (google/cloud-sdk:latest and google/cloud-sdk:VERSION).
The google/cloud-sdk:slim and google/cloud-sdk:alpine images do not contain
additional components pre-installed. You can extend these images by following
the instructions below:
cd debian_slim/
docker build --build-arg CLOUD_SDK_VERSION=159.0.0 \
--build-arg INSTALL_COMPONENTS="google-cloud-sdk-datastore-emulator" \
-t my-cloud-sdk-docker:slim .
To install additional components for Alpine-based images, create a Dockerfile
that uses the gcloud image as the base image. For example, to add kubectl and
app-engine-java components:
FROM google/cloud-sdk:alpine
RUN apk --update add openjdk7-jre
RUN gcloud components install app-engine-java kubectland run:
docker build -t my-cloud-sdk-docker:alpine .
Note that in this case, you have to install dependencies of additional components manually.
The original image in this repository was based off of
FROM gcr.io/google_appengine/base
The full Dockerfile for that can be found
here for archival as well as in image tag
google/cloud-sdk-docker:legacy