You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| `linode-stackscript-data` | `LINODE_STACKSCRIPT_DATA` | None | A JSON string specifying data that is passed (via UDF) to the selected StackScript.
65
65
| `linode-user-data` | `LINODE_USER_DATA` | None | Path to a cloud-init user-data file passed to the Linode Metadata service. File contents are base64-encoded automatically.
66
66
| `linode-create-private-ip` | `LINODE_CREATE_PRIVATE_IP` | None | A flag specifying to create private IP for the Linode instance.
67
+
| `linode-use-interfaces` | `LINODE_USE_INTERFACES` | None | Opt-in to Linode's interface/VPC networking stack (requires `linode-vpc-subnet-id`; conflicts with `linode-create-private-ip`).
68
+
| `linode-vpc-subnet-id` | `LINODE_VPC_SUBNET_ID` | None | VPC subnet ID to attach when using interface networking.
69
+
| `linode-vpc-private-ip` | `LINODE_VPC_PRIVATE_IP` | None | Optional IPv4 address to request on the VPC interface (requires `linode-use-interfaces`).
70
+
| `linode-vpc-interface-firewall-id` | `LINODE_VPC_INTERFACE_FIREWALL_ID` | None | Firewall ID to attach to the VPC interface when using the interface/VPC networking stack.
71
+
| `linode-public-interface-firewall-id` | `LINODE_PUBLIC_INTERFACE_FIREWALL_ID` | None | Firewall ID to attach to the public interface when using the interface/VPC networking stack.
67
72
| `linode-tags` | `LINODE_TAGS` | None | A comma separated list of tags to apply to the Linode resource
68
73
| `linode-ua-prefix` | `LINODE_UA_PREFIX` | None | Prefix the User-Agent in Linode API calls with some 'product/version'
69
74
75
+
## Networking Modes
76
+
77
+
-**Legacy (default):** uses public networking and optionally `--linode-create-private-ip` to attach a private address.
78
+
-**Interface/VPC (opt-in):** enable with `--linode-use-interfaces` plus `--linode-vpc-subnet-id`. If your account does not define default interface firewalls, set `--linode-public-interface-firewall-id` and/or `--linode-vpc-interface-firewall-id` to avoid API errors. This mode is incompatible with `--linode-create-private-ip`.
79
+
70
80
## Notes
71
81
72
82
* When using the `linode/containerlinux``linode-image`, the `linode-ssh-user` will default to `core`
@@ -127,6 +137,24 @@ Are you sure? (y/n): y
127
137
Successfully removed linode
128
138
```
129
139
140
+
### Interface/VPC Networking Example
141
+
142
+
Use Linode's newer interface generation to attach a VPC subnet while keeping the public interface for provisioning traffic.
143
+
144
+
```bash
145
+
docker-machine create \
146
+
-d linode \
147
+
--linode-token=$LINODE_TOKEN \
148
+
--linode-use-interfaces \
149
+
--linode-vpc-subnet-id=67890 \
150
+
--linode-vpc-private-ip=10.0.0.25 \
151
+
linode-vpc
152
+
```
153
+
154
+
If your account does not have default interface firewalls configured, include `--linode-public-interface-firewall-id=<firewall-id>` and/or `--linode-vpc-interface-firewall-id=<firewall-id>` to satisfy the Linode API requirement.
155
+
156
+
The `--linode-use-interfaces` flag is incompatible with `--linode-create-private-ip` to keep networking behavior deterministic. Omit `--linode-vpc-private-ip` to request an automatically assigned address from the subnet. Without `--linode-use-interfaces`, legacy networking remains the default.
157
+
130
158
### Provisioning Docker Swarm
131
159
132
160
The following script serves as an example for creating a [Docker Swarm](https://docs.docker.com/engine/swarm/) with master and worker nodes using the Linode Docker machine driver and private networking.
0 commit comments