为什么我的Azure虚拟机不会出现在Visual Studio的发布功能中,对于ASP.NET MVC应用程序?

时间:2014-07-17 01:54:32

标签: asp.net visual-studio azure azure-virtual-machine

我正在尝试使用Visual Studio 2013将我的ASP.NET MVC4 Web应用程序发布到我已在Azure中运行的虚拟机。虚拟机上安装了IIS。

我没有使用Azure网站功能,因为它不支持虚拟网络,因此无法使用专用LAN IP连接到在Azure VM上运行的SQL Server数据库。因此,此发布问题与简单的发布到azure网站功能无关。

Visual Studio的发布功能的GUI首先以提示选择我的目标发布目标开始。在此提示符下,我选择发布到Windows Azure虚拟机。它会显示一个提示,其中包含一个下拉菜单,我希望能够选择现有的虚拟机。有一个加载微调器图标让我认为它连接到Azure以查询可用的VM。我的VM永远不会被选中 - 下拉列表为空。它表明我已使用预期的用户名登录。

我需要做些什么来使我的虚拟机在Azure中出现在此下拉列表中,以便我可以轻松地向他们发布?

我安装了Web Deploy的完整安装,并为TCP端口8172创建了一个端点。

2 个答案:

答案 0 :(得分:7)

VM未出现在选择下拉列表中的原因可能是因为:

  1. 您的VM上尚未设置已在Azure上配置的Web部署
  2. 不允许通过防火墙进行入站连接或
  3. 未启动网络管理服务或
  4. 它是Windows 8或8.1系统
  5. [更新] 您有一个过时的Azure SDK版本(这是我的问题)。在此处获取最新的Azure SDK:http://azure.microsoft.com/en-us/downloads/
  6. 或者使用Visual Studio本身从菜单选项工具>下载它扩展和更新(假设您使用的是VS 2013) Azure SDK Update Available
  7. 以下文章介绍了在Windows服务器系统上设置Web部署发布的所有步骤:Troubleshooting Web Deploy problems with Visual Studio

    以下文章介绍了无法使用Windows 8或8.1系统设置Web部署。 Installing and Configuring Web Deploy on IIS 8.0 or Later

    希望这有助于某人。

答案 1 :(得分:1)

简单的答案是使用IIS组件安装程序应用程序来安装WebDeploy。安装WebDeploy并在防火墙上打开它的端口后,Visual Studio将能够发布到该计算机。 Visual Studio的发布对话框可能会空了几秒钟,但我认为它会下载机器的详细信息,因为它最终会出现在发布到下拉列表中。