https://github.com/cloud-ca/docker-machine-driver-cloudca
Docker machine driver for cloud.ca
https://github.com/cloud-ca/docker-machine-driver-cloudca
cloud cloud-ca docker-machine docker-machine-driver
Last synced: 3 months ago
JSON representation
Docker machine driver for cloud.ca
- Host: GitHub
- URL: https://github.com/cloud-ca/docker-machine-driver-cloudca
- Owner: cloud-ca
- License: mit
- Created: 2017-01-19T16:09:58.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2018-12-18T14:57:40.000Z (over 7 years ago)
- Last Synced: 2025-05-24T18:45:38.043Z (11 months ago)
- Topics: cloud, cloud-ca, docker-machine, docker-machine-driver
- Language: Go
- Size: 4.14 MB
- Stars: 1
- Watchers: 6
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# docker-machine-cloudca
Create Docker machines on [cloud.ca](https://cloud.ca)
You need to get your **cloud.ca API key** from the cloud.ca portal through the _API keys_ option under the _user profile menu_ and pass that to `docker-machine create` with the `--cloudca-api-key` option.
## Requirements
* Install [Docker Machine](https://docs.docker.com/machine/install-machine/)
* Install [Go](https://golang.org/doc/install)
## Installation
1. Download the cloud.ca Docker Machine driver binary for your OS from the [releases page](https://github.com/cloud-ca/docker-machine-driver-cloudca/releases).
2. Copy the driver to the directory where Docker Machine is located.
## Usage
```bash
docker-machine create -d cloudca \
--cloudca-api-key "APIkey****************" \
--cloudca-service-code "compute-qc" \
--cloudca-environment-name "test-area" \
--cloudca-template "Ubuntu 16.04.01 HVM" \
--cloudca-compute-offering "1vCPU.1GB" \
--cloudca-network-id "bbefe8dd-bb3e-4f37-b467-b63f8334c15b" \
--cloudca-root-disk-size-in-gb 60 \
--cloudca-additional-disk-offering "50GB - 50 IOPS Min." \
test-machine1
```
**Notes:**
* It is recommended to use Environment variables to store sensitive information like API keys. See the options below for the list of supported variables.
* The cloud.ca instances have limited disk space on their root volumes. In order to get more disk space for your Docker machines, use the `--cloudca-root-disk-size-in-gb` if you have a resizable template or `--cloudca-additional-disk-offering` option to specify an additional volume that Docker will be able to use.
## Options
|Option Name|Environment Variable Name|Description|Default Value|required|
|---|---|---|---|---|
|``--cloudca-api-key`` |``CLOUDCA_API_KEY`` |cloud.ca API key |none |yes|
|``--cloudca-service-code`` |``CLOUDCA_SERVICE_CODE`` |cloud.ca service code |none |yes|
|``--cloudca-environment-name``|``CLOUDCA_ENVIRONMENT_NAME``|cloud.ca environment name |none |yes|
|``--cloudca-template`` |``CLOUDCA_TEMPLATE`` |cloud.ca template name or ID |none |yes|
|``--cloudca-compute-offering``|``CLOUDCA_COMPUTE_OFFERING``|cloud.ca compute offering name or ID|none |yes|
|``--cloudca-network-id`` |``CLOUDCA_NETWORK_ID`` |cloud.ca network ID (where the machine will be deployed)|none |yes|
|``--cloudca-root-disk-size-in-gb`` |``CLOUDCA_ROOT_DISK_SIZE_IN_GB`` |cloud.ca root disk size in gb (for resizable templates) |size defined by template |no|
|``--cloudca-additional-disk-offering``|``CLOUDCA_ADDITIONAL_DISK_OFFERING``|cloud.ca additional disk offering name or ID to attach to the machine|none |no|
|``--cloudca-use-private-ip`` |``CLOUDCA_USE_PRIVATE_IP`` |Use a private IP to access the machine|false |no|
|``--cloudca-ssh-user`` |``CLOUDCA_SSH_USER`` |cloud.ca SSH user|cca-user|no|
## Build from source
Download the driver source:
```bash
$ go get github.com/cloud-ca/docker-machine-driver-cloudca
```
Compile the driver:
```bash
$ cd $GOPATH/src/github.com/cloud-ca/docker-machine-driver-cloudca
$ make install
```
## License
This project is licensed under the terms of the MIT license.