1. 概览
ASP.NET 是一个开源 Web 框架,用于使用 .NET 构建现代 Web 应用和服务。ASP.NET 基于 HTML5、CSS 和 JavaScript 创建简单、快速并且可扩展到数百万用户的网站。
在本实验中,您需要将一个简单的 ASP.NET 应用部署到在 Compute Engine 上运行的 Windows Server。此 Codelab 以使用 ASP.NET 框架将 Windows Server 部署到 Compute Engine Codelab 为基础。建议您先完成该实验。
此外,您还需要使用 Visual Studio 2013 或更高版本编写 ASP.NET 应用并将其部署到 Compute Engine。
学习内容
- 如何创建简单的 ASP.NET 应用。
- 如何在 Visual Studio 中本地运行 ASP.NET 应用。
- 如何在 Compute Engine 上部署和运行 ASP.NET 应用至 Windows Server。
所需条件
- 一个浏览器,例如 Chrome 或 Firefox。
- 已安装 Visual Studio 2013 或更高版本。
- 熟悉 .NET Framework 和 C# 语言。
- 在 Compute Engine 上运行具有 ASP.NET 框架的 Windows Server,以及使用 ASP.NET Framework 将 Windows Server 部署到 Compute Engine Codelab 中的 Windows 用户名和密码。
您打算如何使用本教程?
如何评价您的 Google Cloud Platform 使用体验?
<ph type="x-smartling-placeholder">2. 设置和要求
自定进度的环境设置
您应该已经拥有上一个实验中的 Google Cloud Platform 项目,因此无需创建新项目。登录 Google Cloud Platform 控制台 ( console.cloud.google.com),然后选择上一个实验中的项目。
3. 下载 ASP.NET 应用
以 zip 文件的形式下载该示例并将其解压缩。
或者,您也可以克隆其 Git 代码库。
git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git
无论采用哪种方式,您都应该有一个 getting-started-dotnet
文件夹,其中包含以下内容。
4. 在本地运行应用
双击 aspnet\1-hello-world\hello-world.sln
。这会在 Visual Studio 中打开该解决方案。
查看 WebApiConfig.cs
.
,其中包含一个简单的 HelloWorld HTTP 处理程序。
public class HelloWorldHandler : HttpMessageHandler
{
protected override Task<HttpResponseMessage> SendAsync(
HttpRequestMessage request,
CancellationToken cancellationToken)
{
return Task.FromResult(new HttpResponseMessage()
{
Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
});
}
};
在 Visual Studio 中,按 F5 构建并运行应用。Visual Studio 下载 NuGet 依赖项并构建应用后,您应该会看到浏览器中弹出一条 Hello World 消息。
确定应用在本地运行后,按 Shift + F5 停止该应用。
5. 使用 ASP.NET 框架部署 Windows Server
在本部分,我们将学习如何使用 Cloud Marketplace 从 Google Cloud 控制台安装 Windows Server 和 ASP.NET Framework 并创建新的 Google Compute Engine 虚拟机实例。
登录 Google Cloud 控制台
从其他浏览器标签页或窗口转到 Google Cloud 控制台,网址为 https://console.cloud.google.com。请使用您在注册 Google Cloud Platform 时设置的登录凭据,或由实验监考官提供给您的登录凭据。
导航到 Cloud Marketplace
在 Google Cloud 控制台中,点击产品和服务:
然后前往 Cloud Marketplace
搜索 ASP.NET Framework
输入 ASP.NET 以搜索 ASP.NET Framework,然后点击下面的结果框。
在 Compute Engine 上启动
在下一个屏幕中,点击在 Compute Engine 上启动。
创建新实例时,您可以配置多种参数。使用以下设置:
名称 |
|
部署名称 |
|
可用区 |
|
机器类型 |
|
Windows Server 操作系统版本 |
|
启动磁盘类型 |
|
磁盘大小 (GB) | 100 我们使用的是默认的 100GB,但您可以根据自己的需要调整其大小。 |
防火墙 |
|
点击部署,使用 Windows Server 和 ASP.NET Framework 创建新的虚拟机实例!这时系统会打开一个新页面,您可以在其中查看进度。
完成后,从左侧菜单转到 Compute Engine,然后选择虚拟机实例。您应该会在虚拟机实例列表中看到新的虚拟机。
如果点击外部 IP,您还应该会看到实例提供的默认 IIS 网站。
请注意,您也可以通过远程桌面协议 (RDP) 访问机器,但我们需要先创建 Windows 用户和密码。
6. 创建 Windows 用户和密码
如需创建 Windows 用户和密码,请选择创建或重置 Windows 密码。
系统会打开一个新窗口,您可以在其中创建用户。保留默认设置,然后选择设置。几秒钟后,您应该会看到新的 Windows 密码对话框,其中包含新创建的密码。记下该密码,因为下一部分需要用到该密码。
7. 将应用部署到 Compute Engine 上的 Windows Server
是时候将您的应用部署到在 Compute Engine 实例上运行的 Windows Server 了。
首先,您需要找到使用 ASP.NET 框架将 Windows Server 部署到 Compute Engine 中部署的 Compute Engine 实例的外部 IP。在 Cloud 控制台中,转到“计算”>虚拟机实例,找到您的实例并记下其外部 IP 地址。
现在,您将需要在上一步中创建的 Windows 用户名和密码。
在 Visual Studio 解决方案资源管理器中,右键点击项目,然后从上下文菜单中选择发布。
在发布 Web 对话框中,选择自定义作为发布目标。
在新建自定义配置文件对话框中,为部署配置文件提供一个名称,然后点击“确定”。
填写您的个人资料,如下所示。
设备 |
|
网站名称 |
|
用户名 |
|
密码 |
|
目标网址 |
|
点击验证连接,确保属性正确无误。
由于部署中的 Microsoft IIS 安装默认使用自签名证书,因此您会在验证过程中看到证书错误。选中保存此证书以供 Visual Studio 将来的会话使用复选框,然后点击接受以接受证书。
如果您的配置有效,请点击设置。点击文件发布选项,然后选中移除目标位置的其他文件。在将新网站发布到同一 Compute Engine 实例时,这对于后续步骤而言非常重要。
点击发布以部署应用。发布完成后,Visual Studio 会在您的默认网络浏览器中打开该应用。
8. 清理
大功告成!现在,是时候清理您使用的资源了(以节省费用并成为一名优秀的云公民)。
您可以删除实例或直接停止实例,但请注意,已停止的实例仍可能会产生与存储相关的费用。
当然,您也可以删除整个项目,但您将丢失已完成的所有结算设置(必须先停用项目结算功能)。此外,如果删除项目,则只有在当前结算周期结束后,系统才会停止对该项目计费。
9. 恭喜!
Google Compute Engine 是 Google Cloud Platform 的基础架构即服务的基础。如您所见,将 ASP.NET 应用部署到 Compute Engine 上的 Windows Server 非常简单。
所学内容
- 如何创建简单的 ASP.NET 应用。
- 如何在 Visual Studio 中本地运行 ASP.NET 应用。
- 如何在 Compute Engine 上部署和运行 ASP.NET 应用至 Windows Server。
后续步骤
- 详细了解如何在 Google Cloud Platform 上使用 Windows。
- 详细了解 Google Cloud Platform 上的 .NET。
- 详细了解 Google Cloud Platform 上的 SQL Server。
- 详细了解 Cloud Tools for Visual Studio。
- 详细了解 Cloud Tools for PowerShell。
许可
此作品已获得 Creative Commons Attribution 2.0 通用许可授权。
/