Skip to content

Commit af4a18e

Browse files
authored
Merge pull request #25 from vultr/rancher-machine
2 parents 970411f + 161daf3 commit af4a18e

File tree

7 files changed

+241
-968
lines changed

7 files changed

+241
-968
lines changed

README.md

Lines changed: 37 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -48,34 +48,32 @@ docker-machine create -d vultr --vultr-api-key=<vultr-api-key> --engine-install-
4848

4949
### Options
5050

51-
| Argument | Env | Default | Description
52-
| --- | --- | --- | ---
53-
| `vultr-api-key` | `VULTR_API_KEY` | None | **required** Vultr API key (see [here](https://www.vultr.com/api/#overview))
54-
| `vultr-server-type` | `VULTR_SERVER_TYPE` | `1` | Vultr Server Type ( 1-SSD, 2-BareMetal, 3-DedicatedCloud)
55-
| `vultr-dc-id` | `VULTR_DC_ID` | `1` (New Jersey) | VPS DCID (Region) (see [here](https://www.vultr.com/api/#regions))
56-
| `vultr-vps-plan-id` | `VULTR_VPS_PLAN_ID` | `201` (1024 MB RAM,25 GB SSD,1.00 TB BW) | VPS Plan ID (see [here](https://www.vultr.com/api/#plans))
57-
| `vultr-os-id` | `VULTR_OS_ID` | `270` (Ubuntu 18.04 x64) | VPS Operating System ID (see [here](https://www.vultr.com/api/#os))
58-
| `vultr-ipxe-chain-url` | `VULTR_IPXE_CHAIN_URL` | None | (optional) If you've selected the 'custom' operating system, this can be set to chainload the specified URL on bootup, via iPXE
59-
| `vultr-iso-id` | `VULTR_ISO_ID` | None | (optional) If you've selected the 'custom' operating system, this is the ID of a specific ISO to mount during the deployment
60-
| `vultr-script-id` | `VULTR_SCRIPT_ID` | None | (optional) If you've not selected a 'custom' operating system, this can be the SCRIPTID of a startup script to execute on boot
61-
| `vultr-snapshot-id` | `VULTR_SNAPSHOT_ID` | None | (optional) If you've selected the 'snapshot' operating system, this should be the SNAPSHOTID (see v1/snapshot/list) to restore for the initial installation
62-
| `vultr-app-id` | `VULTR_APP_ID` | None | (optional) If launching an application (OSID 186), this is the APPID to launch
63-
| `vultr-reserved-ip-v4` | `VULTR_RESERVED_IP_V4` | None | (optional) IP address of the floating IP to use as the main IP of this server
64-
| `vultr-ip-v6` | `VULTR_IP_V6` | None | (optional) If true, an IPv6 subnet will be assigned to the machine (where available)
65-
| `vultr-auto-backups` | `VULTR_AUTO_BACKUPS` | None | (optional) If true, automatic backups will be enabled for this server (these have an extra charge associated with them)
66-
| `vultr-private-network` | `VULTR_PRIVATE_NETWORK` | None | (optional) If true, private networking support will be added to the new server
67-
| `vultr-network-id` | `VULTR_NETWORK_ID` | None | (optional) List of private networks to attach to this server. Use either this field or enable_private_network, not both
68-
| `vultr-notify-activate` | `VULTR_NOTIFY_ACTIVATE` | None | (optional) If true, an activation email will be sent when the server is ready
69-
| `vultr-ddos-protection` | `VULTR_DDOS_PROTECTION` | None | (optional) If true, DDOS protection will be enabled on the subscription (there is an additional charge for this)
70-
| `vultr-userdata` | `VULTR_USERDATA` | None | (optional) Base64 encoded user-data
71-
| `vultr-label` | `VULTR_LABEL` | None | (optional) This is a text label that will be shown in the control panel
72-
| `vultr-hostname` | `VULTR_HOSTNAME` | None | (optional) The hostname to assign to this server
73-
| `vultr-tag` | `VULTR_TAG` | None | (optional) The tag to assign to this server
51+
| Argument | Env | Default | Description
52+
|---------------------------|---------------------------| --- | ---
53+
| `vultr-api-key` | `VULTR_API_KEY` | None | **required** Vultr API key (see [here](https://www.vultr.com/api/#overview))
54+
| `vultr-server-type` | `VULTR_SERVER_TYPE` | `1` | Vultr Server Type ( 1-SSD, 2-BareMetal, 3-DedicatedCloud)
55+
| `vultr-region` | `VULTR_REGION` | `1` (New Jersey) | VPS DCID (Region) (see [here](https://www.vultr.com/api/#regions))
56+
| `vultr-vps-plan-id` | `VULTR_VPS_PLAN_ID` | `201` (1024 MB RAM,25 GB SSD,1.00 TB BW) | VPS Plan ID (see [here](https://www.vultr.com/api/#plans))
57+
| `vultr-os-id` | `VULTR_OS_ID` | `270` (Ubuntu 18.04 x64) | VPS Operating System ID (see [here](https://www.vultr.com/api/#os))
58+
| `vultr-ipxe-chain-url` | `VULTR_IPXE_CHAIN_URL` | None | (optional) If you've selected the 'custom' operating system, this can be set to chainload the specified URL on bootup, via iPXE
59+
| `vultr-iso-id` | `VULTR_ISO_ID` | None | (optional) If you've selected the 'custom' operating system, this is the ID of a specific ISO to mount during the deployment
60+
| `vultr-script-id` | `VULTR_SCRIPT_ID` | None | (optional) If you've not selected a 'custom' operating system, this can be the SCRIPTID of a startup script to execute on boot
61+
| `vultr-snapshot-id` | `VULTR_SNAPSHOT_ID` | None | (optional) If you've selected the 'snapshot' operating system, this should be the SNAPSHOTID (see v1/snapshot/list) to restore for the initial installation
62+
| `vultr-app-id` | `VULTR_APP_ID` | None | (optional) If launching an application (OSID 186), this is the APPID to launch
63+
| `vultr-reserved-ip-v4` | `VULTR_RESERVED_IP_V4` | None | (optional) IP address of the floating IP to use as the main IP of this server
64+
| `vultr-ip-v6` | `VULTR_IP_V6` | None | (optional) If true, an IPv6 subnet will be assigned to the machine (where available)
65+
| `vultr-auto-backups` | `VULTR_AUTO_BACKUPS` | None | (optional) If true, automatic backups will be enabled for this server (these have an extra charge associated with them)
66+
| `vultr-private-network` | `VULTR_PRIVATE_NETWORK` | None | (optional) If true, private networking support will be added to the new server
67+
| `vultr-network-id` | `VULTR_NETWORK_ID` | None | (optional) List of private networks to attach to this server. Use either this field or enable_private_network, not both
68+
| `vultr-notify-activate` | `VULTR_NOTIFY_ACTIVATE` | None | (optional) If true, an activation email will be sent when the server is ready
69+
| `vultr-ddos-protection` | `VULTR_DDOS_PROTECTION` | None | (optional) If true, DDOS protection will be enabled on the subscription (there is an additional charge for this)
70+
| `vultr-userdata` | `VULTR_USERDATA` | None | (optional) Base64 encoded user-data
71+
| `vultr-label` | `VULTR_LABEL` | None | (optional) This is a text label that will be shown in the control panel
72+
| `vultr-hostname` | `VULTR_HOSTNAME` | None | (optional) The hostname to assign to this server
73+
| `vultr-tag` | `VULTR_TAG` | None | (optional) The tag to assign to this server
7474
| `vultr-firewall-group-id` | `VULTR_FIREWALL_GROUP_ID` | None | (optional) The firewall group to assign to this server
75-
| `vultr-sshkey-id` | `VULTR_SSHKEY_ID` | None | (optional) List of SSH keys to apply to this server on install (only valid for Linux/FreeBSD)
76-
| `vultr-docker-port` | `VULTR_DOCKER_PORT` | `2376` | (optional) Vultr Docker port
77-
| `vultr-ssh-port` | `VULTR_SSH_PORT` | `22` | (optional) SSH Port
78-
| `vultr-ssh-user` | `VULTR_SSH_USER` | `root` | (optional) SSH User
75+
| `vultr-sshkey-id` | `VULTR_SSHKEY_ID` | None | (optional) List of SSH keys to apply to this server on install (only valid for Linux/FreeBSD)
76+
7977

8078
## Debugging
8179

@@ -105,3 +103,15 @@ WARNING: This action will delete both local reference and remote instance.
105103
Are you sure? (y/n): y
106104
Successfully removed vultr
107105
```
106+
107+
## Required Ports
108+
109+
By default, Vultr images have UFW enabled with only port 22 open. The default cloud-init script in this driver completely disables UFW, however, for production environments we recommend only opening specific ports as needed.
110+
111+
The port requirements for Rancher can be found here:
112+
https://ranchermanager.docs.rancher.com/getting-started/installation-and-upgrade/installation-requirements/port-requirements
113+
114+
115+
116+
117+

go.mod

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,27 @@
11
module github.com/vultr/docker-machine-driver-vultr
22

3-
go 1.13
3+
go 1.20
44

5-
replace github.com/docker/docker => github.com/docker/engine v1.4.2-0.20190717161051-705d9623b7c1
5+
require (
6+
github.com/docker/machine v0.16.2
7+
github.com/rancher/machine v0.13.0
8+
github.com/sirupsen/logrus v1.9.0
9+
github.com/vultr/govultr/v2 v2.17.2
10+
golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c
11+
)
612

713
require (
814
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
915
github.com/docker/docker v20.10.17+incompatible // indirect
10-
github.com/docker/machine v0.16.2
16+
github.com/golang/protobuf v1.5.2 // indirect
17+
github.com/google/go-querystring v1.1.0 // indirect
1118
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
12-
github.com/pkg/errors v0.9.1 // indirect
13-
github.com/sirupsen/logrus v1.9.0
14-
github.com/spf13/cast v1.5.0
15-
github.com/vultr/govultr/v2 v2.17.2
19+
github.com/hashicorp/go-retryablehttp v0.7.1 // indirect
20+
github.com/moby/term v0.5.0 // indirect
1621
golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa // indirect
1722
golang.org/x/net v0.0.0-20220728211354-c7608f3a8462 // indirect
18-
golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c
19-
golang.org/x/sys v0.0.0-20220731174439-a90be440212d // indirect
23+
golang.org/x/sys v0.1.0 // indirect
2024
golang.org/x/term v0.0.0-20220722155259-a9ba230a4035 // indirect
25+
google.golang.org/appengine v1.6.7 // indirect
2126
google.golang.org/protobuf v1.28.1 // indirect
22-
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect
23-
gotest.tools v2.2.0+incompatible // indirect
2427
)

0 commit comments

Comments
 (0)