具有Docker的Azure VM无法连接

时间:2015-09-21 19:26:28

标签: windows azure docker virtual-machine azure-xplat-cli

我尝试编写Powershell脚本,在安装了Docker的Azure中创建VM。从我读过的所有内容中,我应该能够做到以下几点:

$image = "b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu-14_04_3-LTS-amd64-server-20150908-en-us-30GB"

azure vm docker create -e 22 -l 'North Europe' --docker-cert-dir dockercert --vm-size Small <myvmname> $image $userName $password

docker --tls -H tcp://<myvmname>.cloudapp.net:4243 info

vm创建有效,但是docker命令失败并出现以下错误:

  

尝试连接时发生错误:获取https://myvmname.cloudapp.net:4243/v1.20/info:拨打tcp 40.127.169.184:4243:ConnectEx tcp:连接尝试失败,因为连接方在一段时间后未正确响应,或建立的连接失败因为连接的主机无法响应。

我发现的一些文章提到了端口2376 - 但这也不起作用。

登录Azure门户并查看创建的VM - Docker VM Extension似乎没有添加,除了默认的SSH端点之外没有其他端点。我期望这些是由azure vm docker create命令创建的。虽然我可能错了。

我看过的几篇示例文章都在这里:

然而,还有很多其他文章也在说同样的事情。

有谁知道我做错了什么?

2 个答案:

答案 0 :(得分:2)

我知道你没有做错任何事。我的azurecli-dockerhost连接已经工作了几个月并且最近失败了。我使用“azure vm docker create”重新创建了我的docker主机,但它不再起作用了。

我认为这是一个天蓝色码头团队必须修复的错误。

目前,我的解决方案是:

1)在不使用Azure docker扩展

的情况下启动Ubuntu VM

2)SSH进入VM并使用以下行安装docker:

sudo su; apt-get -y update
apt-get install linux-image-extra-$(uname -r)
modprobe aufs
curl -sSL https://get.docker.com/ | sh

3)直接在此VM中运行docker,而不依赖于“客户端”,尤其是天蓝色的cli。

如果您坚持使用泊坞客户端方法,我的替代建议是更新您的azure-cli并再次尝试'azure vm docker create'。让我知道它是怎么回事。

sudo su
apt-get update; apt-get -y install nodejs-legacy; apt-get -y install npm; npm install azure-cli --global

答案 1 :(得分:0)

要为我的问题添加其他答案,事实证明您可以使用docker create命令执行相同操作...

docker-machine create $vmname --driver azure --azure-publish-settings-file MySubscription.publishsettings

这种方法对我有用。