Machine: Support for elastic ips in AWS driver

Created on 27 Apr 2016  路  9Comments  路  Source: docker/machine

I would like to be able to create a machine in AWS with a specific elastic ip address. I need a specific ip address so I can easily setup my external dns.

It seems that AWS does not allow you to launch an instance with an elastic ip directly: you need to launch it first and associate the elastic ip later (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html#working-with-eips, http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-RunInstances.html).

I have found that if I assign the elastic ip address after creating the machine with docker-machine create, there is a fair bit of communication and certificate difficulties (e.x. #3291 and #3224).

Given that aws does allow launching directly with an elastic ip address, is this feature request too elaborate to wrap inside the aws driver? If so, is there guidance on the correct way to do this? If I create my node and modify its public ip address, what commands need to run to fix the docker environment?

Most helpful comment

I too would love it, even at the expense of being marked as repetitive

All 9 comments

Happy to help if this feature request is accepted.

I found another potential way to do this that might be easier to support. You can create an Elastic Network Interface (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) once, and assign it the elastic ip. Then, during instance launch, we can associate that network interface with the new instance (see the --network-attachment option (http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-RunInstances.html)).

I haven't tried this out myself yet though.

EIP certainly seems like it could be a better fit (today I'm regenerating certs pretty much every time I stop/start my Machine EC2 instances). I'd be happy to evaluate such a PR although I'd suggest to make it a quick POC at first just to get a feel for the scope of the work.

@rmelick do you want to branistorm a bit to see how we can get this implemented?

I think that is very welcome feature as well.

This feature would make life much easier

I too would love it, even at the expense of being marked as repetitive

This feature would make my life so much easier

I'd appreciate this feature as well.

Was this page helpful?
0 / 5 - 0 ratings