简体   繁体   中英

docker-machine connect to existing machine

I have a docker swarm all hosted on AWS, created basically along the lines of this tutorial .

To deploy our code, I need to be able to access this swarm separate of the computer where I created these instances. I don't see anywhere in the docs for the docker-machine amazonec2 driver where I can use my AWS credentials to connect to these existing instances.

Some tutorials I came across use a --url argument to specify via the docker-machine url to connect to an existing instance, but I don't see that argument in my most recent docker-machine version.

Other tutorials mention TLS configuration and using that in conjunction with docker-machine to connect to existing instances, but given unique/secret AWS credentials, this seems redundant and adds a layer of complexity I hope I can avoid.

What is the recommended approach to this?

Unable to connect:

puttygen my-key.pem -L > id_rsa

docker-machine create --driver generic --generic-ip-address=ec2-....compute.amazonaws.com --generic-ssh-key id_rsa Swarm-Dev01

Running pre-create checks... Creating machine... (Swarm-Dev01) Importing SSH key... Waiting for machine to be running, this may take a few minutes... Detecting operating system of created instance... Waiting for SSH to be available...

To get access to an existing instance, you can use the docker-machine create --driver generic command. The command will ssh onto the machine, make sure docker is installed, and then download certificates that it stores for future access eg using docker-compose.

Command:

docker-machine create \
    --driver generic \
    --generic-ip-address=<your_ip> \
    --generic-ssh-key ~/.ssh/id_rsa \
    vm

Documentation: https://docs.docker.com/machine/drivers/generic/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM