重命名docker机器

我怎样才能重新命名docker-machine机器? 我找不到使用docker-machine --help或子命令文档 。

看起来有一个被抛弃的拉取请求: PR 30

在相关的问题上,有关于不允许这个命令的争论: 第59期

基本上你必须:

  1. 从docker机器商店(通常在/.docker/machine/machines/ )中重命名docker机的目录
  2. 用新名称和新path更新config.json
  3. 重命名虚拟机提供者(VirtualBox,VMware等)中的机器

这是VirtualBox的要点 。 有了这个,你可以重新命名像这个docker-machine-rename default my-default

这只会在你使用VirtualBox时才起作用。 如果您使用的是paralells驱动程序或其他东西,您必须使用该驱动程序的相应命令来replacevboxmanage ...

编辑我收到来自@DagHøidahl的反馈后更新了脚本

警告:我在下面使用的方法不起作用!

在最后的重启,我有一个客户端版本不匹配。 closuresterminal并重新启动“Docker快速启动terminal”后,我的默认机器被删除并重新创build… 🙁

无论如何,对于那些可能指出这个过程中的任何错误的人,我已经在这里列出来了。

也许“默认”的名字是保留的。 目前,我正在使用VMWare Fusion托pipe的机器名称“vm”

我已经发布了这个不回答的警告,任何人可能会尝试相同的,并在默认的机器中失去任何容器。


目标:删除默认机器并将vm重命名为默认值。 然后使用新机器作为默认

我用的方法不够高雅,[最后] 不适合我

  1. 删除docker机

    docker机rm默认

  2. 重命名目录

    cd〜/ .docker / machine / machines
    MVVM默认
    光盘默认

  3. 手动将所有vm。*文件重命名为默认值。

    mv vm.plist default.plist
    mv vm.vmdk default.vmdk
    mv vm.vmdk.lck default.vmdk.lck
    mv vm.vmsd default.vmsd
    mv vm.vmx default.vmx
    mv vm.vmx.lck default.vmx.lck
    mv vm.vmxf default.vmxf

  4. 编辑default.vmx并在适当的位置用默认值replacevm

    [你需要自己做…]

  5. 在VMWare Fusion中打开新的“默认”虚拟机
    • Finder – > go – >文件夹 – >〜/ .docker / machine / machines
    • 将.vmx文件拖到Fusion中
  6. 启动重命名的机器

    $ docker-machine开始默认
    启动“默认”…
    机器“默认”已启动。
    等待SSH可用…
    检测供应商…
    启动的机器可能有新的IP地址。 您可能需要重新运行docker-machine env命令。
    $ docker-machine env
    检查TLS连接时出错:检查和/或重新生成证书时出错:validation主机“172.16.41.132:2376”的证书时出错:x509:证书对于172.16.41.131有效,而不是172.16.41.132
    您可以尝试使用docker-machine regenerate-certs [name]重新生成它们。
    请注意,这将触发Docker守护进程重启,这将停止运行容器。
    $ docker-machine regenerate-certs默认
    重新生成TLS机器证书? 警告:这是不可逆转的。 (y / n):y
    重新生成TLS证书
    等待SSH可用…
    检测供应商…
    将证书复制到本地计算机目录中
    将证书复制到远程机器…
    在远程守护进程上设置Dockerconfiguration…

在这一点上,机器工作正常 …但是,尝试另一个docker-machine restart default产生客户端版本不匹配错误。

closuresterminal并重新启动“Docker快速入门terminal”后,使用virtualbox重新生成了默认的机器,并且我的VMWare托pipe的默认机器被删除了…

如果您使用docker工具箱创build或启动docker机器,则有一个脚本文件来configuration机器设置,包括名称。 find您的docker工具箱path,如:c:\ Program Files \ Docker Toolbox。 有一个名为start.sh的脚本。取消默认名称作为您的机器名称。

 VM=${DOCKER_MACHINE_NAME-xxxxx} 

更改configuration之前,最好删除默认的机器文件。 然后重新启动工具箱。