4.0 KiB
Google Compute Engine
Create machines on Google Compute Engine. You will need a Google account and a project id. See https://cloud.google.com/compute/docs/projects for details on projects.
Credentials
The Google driver uses Application Default Credentials to get authorization credentials for use in calling Google APIs.
So if docker-machine is used from a GCE host, authentication will happen automatically
via the built-in service account.
Otherwise, install gcloud and get
through the oauth2 process with gcloud auth login.
Example
To create a machine instance, specify --driver google, the project id and the machine name.
$ gcloud auth login
$ docker-machine create --driver google --google-project PROJECT_ID vm01
$ docker-machine create --driver google \
--google-project PROJECT_ID \
--google-zone us-central1-a \
--google-machine-type f1-micro \
vm02
Options
--google-project: required The id of your project to use when launching the instance.--google-zone: The zone to launch the instance.--google-machine-type: The type of instance.--google-machine-image: The absolute URL to a base VM image to instantiate.--google-username: The username to use for the instance.--google-scopes: The scopes for OAuth 2.0 to Access Google APIs. See Google Compute Engine Doc.--google-disk-size: The disk size of instance.--google-disk-type: The disk type of instance.--google-address: Instance's static external IP (name or IP).--google-preemptible: Instance preemptibility.--google-tags: Instance tags (comma-separated).--google-use-internal-ip: When this option is used during create it will make docker-machine use internal rather than public NATed IPs. The flag is persistent in the sense that a machine created with it retains the IP. It's useful for managing docker machines from another machine on the same network e.g. while deploying swarm.
The GCE driver will use the ubuntu-1510-wily-v20151114 instance image unless otherwise specified. To obtain a
list of image URLs run:
gcloud compute images list --uri
Environment variables and default values:
| CLI option | Environment variable | Default |
|---|---|---|
--google-project |
GOOGLE_PROJECT |
- |
--google-zone |
GOOGLE_ZONE |
us-central1-a |
--google-machine-type |
GOOGLE_MACHINE_TYPE |
f1-standard-1 |
--google-machine-image |
GOOGLE_MACHINE_IMAGE |
ubuntu-1510-wily-v20151114 |
--google-username |
GOOGLE_USERNAME |
docker-user |
--google-scopes |
GOOGLE_SCOPES |
devstorage.read_only,logging.write |
--google-disk-size |
GOOGLE_DISK_SIZE |
10 |
--google-disk-type |
GOOGLE_DISK_TYPE |
pd-standard |
--google-address |
GOOGLE_ADDRESS |
- |
--google-preemptible |
GOOGLE_PREEMPTIBLE |
- |
--google-tags |
GOOGLE_TAGS |
- |
--google-use-internal-ip |
GOOGLE_USE_INTERNAL_IP |
- |