据我所知,docker-machine“保存状态”的唯一方法是通过它创建的配置文件。每个使用docker-machine 启动的主机都会在~/.docker/machine/machines/ 下创建一个文件夹来保存其配置,有关DigitalOcean Droplet 的信息存储在config.json 文件中。我们以一个具体的为例:
$ cat ~/.docker/machine/machines/docker-001/config.json | jq .
{
"DriverName": "digitalocean",
"Driver": {
"AccessToken": "9dasd89ssf6542notarealtoken455b44sdgf4685",
"DropletID": 4906043,
"DropletName": "",
"Image": "ubuntu-14-04-x64",
"MachineName": "docker-001",
"IPAddress": "45.32.128.70",
"Region": "nyc3",
"SSHKeyID": 7697371,
"Size": "512mb",
"CaCertPath": "/home/asb/.docker/machine/certs/ca.pem",
"PrivateKeyPath": "/home/asb/.docker/machine/certs/ca-key.pem",
"DriverKeyPath": "",
"SwarmMaster": false,
"SwarmHost": "tcp://0.0.0.0:3376",
"SwarmDiscovery": ""
},
"CaCertPath": "/home/asb/.docker/machine/certs/ca.pem",
"ServerCertPath": "",
"ServerKeyPath": "",
"PrivateKeyPath": "/home/asb/.docker/machine/certs/ca-key.pem",
"ClientCertPath": "",
"SwarmMaster": false,
"SwarmHost": "tcp://0.0.0.0:3376",
"SwarmDiscovery": ""
}
因此,在您的计算机之间同步 ~/.docker/machine/ 目录应该可以解决问题。