如何导出Docker-machineconfiguration在其他机器上使用

将docker-machine机器(远程不是本地主机)从一台计算机移到另一台计算机(osx到windows)的最佳方法是什么? 我必须更改所有机器的config.json文件,以便在另一台计算机上工作,因为证书和机器的path都在configuration文件中硬编码。

虽然这种方法有效,但如果我们需要与团队中的每个人分享,这有点乏味。 有没有办法导出或导入机器? 或者还有其他方法来存档我正在尝试做的事情。

在这个特性被本地实现之前(参见问题23 ),可以使用我编写的这个导入/导出脚本。

https://gist.github.com/schickling/2c48da462a7def0a577e

导出(在主机A上)

$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS dev - digitalocean Running tcp://example.com:2376 v1.10.1 $ ./docker-machine-export.sh dev Exported machine to dev.zip $ ls docker-machine-import.sh docker-machine-export.sh dev.zip 

导入(在主机B上)

 $ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS $ ./docker-machine-import.sh dev.zip Exported machine to dev.zip $ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS dev - digitalocean Running tcp://example.com:2376 v1.10.1 

现在, 唯一的办法就是你已经做了什么。

在模糊的未来的某个时刻,将会有一个“机器服务器”组件,可以安全地存储机器证书,并允许团队共享访问机器。 有一些关于这个的讨论,但还没有正式开始。 路线图中有一个提及。

也许值得注意的是一个可以在人们之间共享的机器声明文件的提议 ,这将允许人们使用相同的configuration创build不同的机器(这不是你正在寻找的)。

正如戴夫所说,今天是不可能的,但是我们的想法是非常重要的。

https://github.com/docker/machine/issues/2516是我最近提出解决这个问题的方法。 这将让每个人都在正确的方向,并允许共享机器目录/ config.json从计算机到电脑,而无需像你提到的自定义修改。

无论如何,绕过由未知的权威机构错误签署的X509证书? 我猜是因为我在笔记本电脑上创build了这些机器,证书是在那里生成的,我的云端口pipe理员实例不信任我的证书。