Sign inSign up

faithlife/google-cloud-sdk

By faithlife

•Updated over 8 years ago

Docker image with all the components of the Google Cloud SDK

Image
0

190

faithlife/google-cloud-sdk repository overview

⁠Google Cloud SDK Docker

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⁠.

⁠Supported tags

  • 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.

Docker Pulls Docker Build Status Docker Automated buil

⁠Usage

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.0

or use a particular version number:

docker run -ti google/cloud-sdk:160.0.0 gcloud version

Then, 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: Warning: The gcloud-config container now has a volume containing your Google Cloud credentials. Do not use gcloud-config volume in other containers.

⁠Installing additional components

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:

⁠Debian-based images
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 .
⁠Alpine-based images

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 kubectl

and run:

docker build  -t my-cloud-sdk-docker:alpine .

Note that in this case, you have to install dependencies of additional components manually.

⁠Legacy image (Google App Engine based)

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

Tag summary

Content type

Image

Digest

Size

631 MB

Last updated

over 8 years ago

docker pull faithlife/google-cloud-sdk:ubuntu