Microsoft Azure (Machine)
Microsoft Azure
您需要订阅Azure才能使用此Docker机器驱动程序。申请免费审判。
注:
本文档用于Azure驱动程序的新版本,该驱动程序从V0.7.0开始发布。此驱动程序与旧的Azure驱动程序不向后兼容。如果您想继续管理您现有的Azure机器,请在V0.7.0之前下载并使用机器版本。
认证
第一次尝试创建机器时,Azure驱动程序将要求您验证:
$ docker-machine create --driver azure --azure-subscription-id <subs-id> <machine-name>
Running pre-create checks...
Microsoft Azure: To sign in, use a web browser to open the page https://aka.ms/devicelogin.
Enter the code [...] to authenticate.
认证后,驱动会在两周内记住你的认证。
已知问题:
Azure Active Directory存在一个已知问题,导致存储的认证在用户登录到个微软帐户(之前的ID)而不是ActiveDirectory帐户,之内的几个小时内而不是14天内过期。目前,没有ETA可供解决,但同时您可以创建AAD帐户然后用它登录作为解决办法。
备选方案
Azure驱动程序只需要一个参数,以使得事情更容易。请阅读可选的标志,以进一步配置机器的详细信息和位置。
所需:
--azure-subscription-id
*(需要)
您的Azure订阅ID。任选:
--azure-image
::Azure虚拟机映像的开发者格式:报价:单品:版本。[?]
--azure-location
:创建虚拟机的Azure域。[?]
--azure-resource-group
:Azure资源组名称,用于在其中创建资源。
--azure-size
:Azure虚拟机的大小。[?]
--azure-ssh-user
:SSH登录的用户名。
--azure-vnet
:Azure虚拟网络名称,用于连接虚拟机。[?]若要从其他资源组指定虚拟网络,请使用resourcegroup:vnet-name
格式。
--azure-subnet
Azure子网名称将在虚拟网络中使用。
--azure-subnet-prefix
:私人CIDR区块。用于在不存在子网的情况下创建子网。在子网确实存在的情况下必须匹配。
--azure-availability-set
:Azure可用性设置为将虚拟机放置到。[?]
--azure-open-port
:让其他端口号(s)可从因特网访问。[?]
--azure-private-ip-address
:指定机器的静态专用IP地址。
--azure-use-private-ip
:使用机器的专用IP地址进行连接。它对于管理来自同一网络上的另一台计算机的Docker机器很有用,例如,在部署Swarn时。
--azure-no-public-ip
不要为机器创建公共IP地址(包含--azure-use-private-ip
)。只应在同一子网中从Azure VM创建机器时使用。
--azure-static-public-ip
:为机器分配静态公共IP地址。
--azure-docker-port
:Docker引擎的端口号。
--azure-environment
Azure环境(例如AzurePublicCloud
,AzureChinaCloud
)。
环境变量和默认值
CLI 选项 | 环境变量 | 默认值 |
---|---|---|
--azure-subscription-id | AZURE_SUBSCRIPTION_ID | - |
--azure-environment | AZURE_ENVIRONMENT | AzurePublicCloud |
--azure-image | AZURE_IMAGE | canonical:UbuntuServer:16.04.0-LTS:latest |
--azure-location | AZURE_LOCATION | westus |
--azure-resource-group | AZURE_RESOURCE_GROUP | docker-machine |
--azure-size | AZURE_SIZE | Standard_A2 |
--azure-ssh-user | AZURE_SSH_USER | docker-user |
--azure-vnet | AZURE_VNET | docker-machine |
--azure-subnet | AZURE_SUBNET | docker-machine |
--azure-subnet-prefix | AZURE_SUBNET_PREFIX | 192.168.0.0/16 |
--azure-availability-set | AZURE_AVAILABILITY_SET | docker-machine |
--azure-open-port | - | - |
--azure-private-ip-address | - | - |
--azure-use-private-ip | - | - |
--azure-no-public-ip | - | - |
--azure-static-public-ip | - | - |
--azure-docker-port | AZURE_DOCKER_PORT | 2376 |
注记
Azure完全采用新的Azure资源管理器(ARM)叠起来。创建的每一台机器都有一些与其相关的其他Azure资源:
- 一个虚拟网络并在其下创建一个子网,将您的机器放置到。这将在您的码头机器之间建立本地网络。
- 一个可用性集是为了最大化您的机器的可用性而创建的。
当第一台机器创建并在之后重用时,就只创建一次。尽管它们是免费资源,但是在删除使用这些资源的最后一台计算机之后,驱动程序会尽最大努力清理它们。
每台机器都使用公共动态IP地址创建,用于外部连接。默认情况下,其所有端口(Docker和SSH除外)都已关闭。你可以用--azure-open-port
参数指定可从Internet访问的多个端口号。