Docker-machine:更新 azure 驱动程序配置

Docker-machine: Update the azure driver configuration

我在 Azure 云中 运行 的 docker 机器上遇到问题。我使用默认 size 创建机器,即 Standard_A2 但我想升级机器。

我尝试通过 Azure Web 门户手动将大小更改为 Standard_A4,这似乎工作正常,因为虚拟机重新启动并且在概述部分显示:

Size
Standard A4 (8 vcpus, 14 GB memory)

但是,当运行命令docker-machine inspect <machine-name>时,配置仍然显示机器的大小为Standard_A2。见下文:

{
    "ConfigVersion": 3,
    "Driver": {
        ...

        "ResourceGroup": "docker-machine",
        "DockerPort": 2376,
        "Location": "westeurope",
        "Size": "Standard_A2",

        ...
    },
    ...
}

我知道我可以删除整台机器并使用 --azure-size 选项创建一个具有不同默认大小的新机器,但是,我认为如果没有办法升级一台机器,这很奇怪已经 运行.

知道如何实现吗?我在文档中找不到任何内容...

目前,我们不能使用docker-machine命令行来更新现有的虚拟机。

这是 Azure go 文件的docker-machine,上面写着无法更新现有虚拟机

在您的方案中,作为解决方法,在您调整 Azure VM 的大小后,我们可以将 config.jsonStandard_A2 更改为 Standard_A4

我们可以在这里找到config.json

/root/.docker/machine/machines/<machine-name>

我们更改 json 文件后,运行 docker-machine inspect myvms 我们将得到这个新结果:

[root@jasoncli@jasonye myvms]# docker-machine inspect myvms
{
    "ConfigVersion": 3,
    "Driver": {
        "IPAddress": "",
        "MachineName": "myvms",
        "SSHUser": "azureuser",
        "SSHPort": 22,
        "SSHKeyPath": "/root/.docker/machine/machines/myvms/id_rsa",
        "StorePath": "/root/.docker/machine",
        "SwarmMaster": false,
        "SwarmHost": "tcp://0.0.0.0:3376",
        "SwarmDiscovery": "",
        "ClientID": "",
        "ClientSecret": "",
        "Environment": "AzurePublicCloud",
        "SubscriptionID": "xxxx1ed3-xxxx-44fb-b5ba-xxxxa07xxxx",
        "ResourceGroup": "docker-machine",
        "DockerPort": 2376,
        "Location": "westus",
        "Size": "Standard_A4",

希望这对您有所帮助。