• 【愚公系列】华为云系列之DevCloud+ECS+MySQL搭建超级冷笑话网站【开发者专属集市】



    前言

    1.项目背景

    冷笑话,是指笑话本身因为无聊、谐音字、翻译、或省去主语、不同逻辑、断语或特殊内容等问题,或由于表演者语气或表情等原因,导致一个笑话不能达到好笑的目的,较难引人发笑而成冷场,不过并不代表笑话本身沉闷,这也是幽默的一种表现。而现在听到冷笑话大多会会心微笑,有时作出双臂抱紧的动作表示:“好冷啊!”或与冷语意相关的说话与表现,如打冷颤、温度、空调或炎热天气等等。------百度百科

    冷笑话是一种新兴的语言现象,伴随着网络的普及它已经渗透到了青年群体的日常生活,偶尔爆出的一两句冷笑话能使交流氛围变得轻松愉悦,也能展示交谈者的幽默和智慧。

    冷笑话是笑话的一种,但是又有很大的不同,冷笑话的四个主要特点:以网络为载体、彻底的娱乐性、自身价值的两重性、后现代结构主义。

    从体裁的角度将冷笑话分为故事型、问题型、对话型、条列型;从构成方式将冷笑话分为“借用修辞规律”、“打破时空界限”、“混淆概念”、“语种跨越”、“违反逻辑”、“狡辩”、“口误”。

    本文介绍的项目主要是基于C#开源项目,为从事C#项目研发的企业或个人提供开发上云指导,通过开源项目超级冷笑话的搭建,为C#开发者提供覆盖软件开发全生命周期的云上开发操作指导。

    本文主要是基于华为云搭建超级冷笑话网站相关步骤演示:

    1. 创建项目
    2. 创建代码仓库
    3. 创建数据库
    4. 修改代码
    5. 编译构建
    6. 部署
    7. 环境准备
    8. 导入主机
    9. 部署应用
    10. 应用访问
    11. 资源释放

    2.项目介绍

    • 项目名称:超级冷笑话

    • 项目简介:一个用C#语言开发的Web网站,包含用户登录注册以及浏览笑话等功能。

    • 网站作者:https://github.com/binlyzhuo
      在这里插入图片描述

    • 开源地址:https://github.com/binlyzhuo/superjokes
      在这里插入图片描述

    • 开源证书:Apache-2.0 License

    • 开发语言:JavaScript(61.2%)、C#(28.5%)、CSS(6.7%)、HTML(2.3%)

    • 部署环境:Windows Server 2012、IIS、MySQL 5.7.33

    • 部署方式:PowerShell 部署

    • 项目架构:典型的B/S架构系统,用户通过互联网访问系统,客户端处理用户操作及向数据库读取或写入数据。
      在这里插入图片描述

    3.所需华为云环境

    涉及华为云服务:软件开发平台DevCloud、弹性云服务器ECS、云数据库RDS

    • 软件开发平台DevCloud:DevCloud是集华为研发实践、前沿研发理念、先进研发工具为一体的研发云平台,面向开发者提供研发工具服务,让软件开发简单高效。
    • 弹性云服务器ECS:弹性云服务器(Elastic Cloud Server, ECS)是一种云上可随时自助获取、可弹性伸缩的计算服务,可帮助您打造安全、可靠、灵活、高效的应用环境。
    • 云数据库RDS:云数据库RDS(Relational Database Service,关系型数据库云服务),通过云服务的方式让关系型数据库设置、操作和扩展变得更加简单。RDS的低成本、高效率、灵活性帮助企业解决费时、费力的数据库管理,使企业有更多的时间聚焦到应用和业务层面上来,节约用户的硬件成本和维护成本。目前支持MySQL关系型数据库,与现有商用MySQL完全兼容。RDS可以作为各行业中小企业关系型数据库应用、电子商务网站、社区网站、手机APP以及游戏类应用等。

    一、华为云系列之DevCloud+ECS+MySQL搭建超级冷笑话网站

    1.创建项目

    1、登录华为云后,按产品-开发与运维-软件开发平台DevCloud路径,进入华为云DevCloud平台首页
    在这里插入图片描述

    2、进入页面后选择免费试用
    直接进入相关网址:https://www.huaweicloud.com/devcloud/
    在这里插入图片描述

    3、选择同意协议后会跳到如下页面

    在这里插入图片描述
    4、继续择基础版本进行购买

    在这里插入图片描述
    5、购买成功后会直接进入控制台

    在这里插入图片描述
    6、依次点击项目管理-立即使用-新建项目-选择空白项目scrum

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    7、在新建项目页,按如下参数配置项目

    • 项目流程:Scrum
    • 项目名称:自定义(如:超级冷笑话网站)
    • 点击确定按钮完成项目创建

    在这里插入图片描述
    8、至此项目就创建完成了
    在这里插入图片描述

    2.创建代码仓库

    1、创建项目完成后会自动跳转进入项目,按照代码-代码托管-导入外部仓库的路径创建代码仓库,如下图所示:
    在这里插入图片描述

    2、在导入外部仓库页,按如下填写外部仓库信息:

    1. 源仓库地址:
      https://codehub.devcloud.huaweicloud.com/3c4b26c6e8fc4761817f90cc43f42d31/superjokes.git

    2. 源仓库访问权限:不需要用户名/密码

    3. 勾选我已阅读并同意《隐私政策声明》和《软件开发服务使用声明》

    4. 点击下一步按钮

    在这里插入图片描述
    3、仓库名称会默认带入源仓库名称,也可用户自定义,其他配置默认,点击确定按钮完成仓库创建
    在这里插入图片描述
    在这里插入图片描述

    3.创建数据库

    1、本项目需要MySQL数据库存放网站内展示的冷笑话数据

    云数据库MySQL网址:https://www.huaweicloud.com/product/mysql.html
    在这里插入图片描述
    2、按如下配置选择MySQL数据库

    • 计费模式:按需计费
    • 区域:华北-北京四(与 DevCloud 项目所在区域保持一致)
    • 实例名称:默认(可以自定义)
    • 数据库引擎:MySQL
    • 数据库版本:5.7
    • 实例类型:单机
    • 存储类型:SSD 云盘
    • 可用区:默认(可用区一)
    • 性能规格:通用型 2vCPUs|4GB
    • 存储空间:默认(40GB)
    • 磁盘加密:不加密
    • 虚拟私有云:default-vpc/default-subnet
    • 数据库端口:3306
    • 安全组:Sys-WebServer
    • 设置密码:现在设置
    • 管理员密码:自定义(请牢记此密码)
    • 参数模板:默认(Default-MySQL-5.7)
    • 购买数量:1

    在这里插入图片描述
    3、返回云数据库RDS列表
    在这里插入图片描述
    4、待数据库创建完成,运行状态为正常后,点击更多-登录
    在这里插入图片描述

    5、在实例登录页面,输入数据库密码(购买时设置的密码),可以先点击测试连接按钮,连接成功后点击登录按钮

    在这里插入图片描述
    6、登录进入实例,点击上方操作菜单的SQL 操作-SQL 查询

    在这里插入图片描述
    7、返回到DevCloud之前创建超级冷笑话网站项目的代码托管,进入代码仓库,superjokes.sql是数据库配置脚本,复制文件的内容。

    在这里插入图片描述
    8、将复制的内容粘贴到SQL查询页面,并点击执行 SQL按钮。

    在这里插入图片描述
    9、待SQL脚本执行完成,点击按钮,可以看到数据库joke及其数据库表已经创建成功。
    在这里插入图片描述

    4.修改代码

    1、返回DevCloud代码托管服务,点击代码仓库名称,进入代码详情页,进入src/Joke.Web/App_Data/找到 appsettings.config 文件,点击右上角 图标,进行编辑

    在这里插入图片描述
    2、按下图修改第33行代码

    在这里插入图片描述
    3、修改完如下图,点击确定按钮完成修改
    在这里插入图片描述

    5.编译构建

    1、按照路径构建&制品-编译构建进入编译构建服务,点击新建任务按钮

    在这里插入图片描述

    2、在选择源代码页,全部默认(选择的是上一步骤在CodeHub上创建的superjokes代码仓库maser分支,实际开发中可以根据实际情况自定义选择),点击下一步按钮。
    在这里插入图片描述
    3、在选择构建模板页,选择空白构建模板,点击确定按钮,完成构建任务的创建。
    在这里插入图片描述

    4、界面会自动跳转到构建步骤页面,选择Msbuild 构建(可通过搜索栏进行搜索查找)点击添加按钮。
    在这里插入图片描述
    5、可以看到上一步选择的步骤已添加到左侧,在右侧继续选择上传软件包到软件发布库,点击添加按钮

    在这里插入图片描述
    6、选中左侧Msbuild 构建步骤,

    • 工具版本:msbuild15-all-dotnetcore2.1
    • powershell 命令:
    cd src
    nuget
    nuget restore && msbuild /p:OutputPath=../buildResult/Release/bin
    powershell -Command Compress-Archive -
    Path ./buildResult/Release/bin/_PublishedWebsites/Joke.Web/* -DestinationPath ./archive.zip
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    7、选中左侧的上传软件包到发布仓库步骤,如下图在右侧步骤详情里按如下进行配置

    • 构建包路径:src/archive.zip
    • 发布版本号:1.0.0
    • 包名:superjokes

    点击“新建并执行”按钮,执行构建任务。

    在这里插入图片描述
    8、界面跳转到任务执行界面,左侧可以看到执行步骤进度,右侧打印构建日志

    在这里插入图片描述

    6.部署

    1、应用需要部署到服务器上,所以首先需要购买一台 ECS,再将应用部署上去。

    按照更多-设置-通用设置,进入通用设置页面。

    在这里插入图片描述
    2、选择主机组管理,点击新建主机组按钮
    在这里插入图片描述
    3、输入主机组名称(如:superjokes-ecs-group),操作系统选择Windows,点击保存按钮完成主机组创建

    在这里插入图片描述
    4、自动跳转到主机信息页面,点击导入ECS按钮。
    在这里插入图片描述
    5、由于还未创建ECS,点击ECS控制台按钮,进入ECS控制台。
    在这里插入图片描述
    6、点击购买弹性云服务器按钮。
    在这里插入图片描述
    7、在基础配置步骤,按如下配置

    • 计费模式:按需计费

    • 区域:华北-北京四(与 DevCloud 项目所在区域保持一致)

    • 可用区:随机分配
      在这里插入图片描述

    • CPU 架构:x86 计算

    • 规格:c7.large.2 2vCPU|4GB (本实验所需资源较少,实际项目根据实际情况选择)
      在这里插入图片描述

    • 镜像:市场镜像 Windows Server 2012 R2 标准版 64 位简体中文(40GB)

    • 系统盘:高 IO 40GB
      在这里插入图片描述

    8、点击下一步:网络配置按钮。

    • 网络配置页按如下配置参数
    • 网络:vpc-default/subnet-default(与数据库使用同一个 vpc)
    • 安全组:Sys-WebServer(与数据库使用同一个安全组)
    • 弹性公网 IP:现在购买
    • 线路:全动态 BGP
    • 公网带宽:按带宽计费
    • 带宽大小:5
    • 点击“下一步:高级配置”按钮

    在这里插入图片描述

    在这里插入图片描述
    9、在高级配置页,按如下进行配置

    • 云服务器名称:默认/自定义
    • 登录凭证:密码
    • 密码:自定义(请牢记,后续部署使用)
    • 其他默认,点击“下一步:确认配置”按钮

    在这里插入图片描述
    10、在确认配置页,会显示之前步骤配置的ECS参数,购买数量:1,勾选我已阅读并同意《镜像免责声明》,点击立即购买按钮,完成ECS创建。

    在 ECS 列表页,可以看到创建的 ECS
    在这里插入图片描述

    7.环境准备

    1、本次实验网站部署需要将主机环境进行初始化配置,按下图先登录主机

    在这里插入图片描述
    2、进入ecs远程登录界面,点击Ctrl+Alt+Del按钮
    在这里插入图片描述
    3、输入购买主机时设置的密码进行登录
    在这里插入图片描述
    4、登录后按官方文档进行主机连通性配置:https://support.huaweicloud.com/usermanual-deployman/deployman_hlp_1101.html
    在这里插入图片描述
    配置后出现 HTTPS 且 Hostname 不为空,才表示配置成功
    在这里插入图片描述

    5、打开主机的“控制面板”-“程序和功能”-“启用或关闭 Windows 功能”
    在这里插入图片描述
    如下图,按照向导点击“下一步”,在第 4 步,“Web 服务器”-“应用程序开发”中勾选“.Net Extensibility 3.5”、“.Net Extensibility 4.5”、“ASP.NET 3.5”、“ASP.NET 4.5”,最后点击“安装”按钮。

    在这里插入图片描述
    待安装完毕点击“关闭”按钮,关闭向导。
    在这里插入图片描述
    至此完成了主机的环境配置。

    8.导入主机

    1、返回DevCloud页面,将创建的ECS导入(如果没有刷新,先将页面关闭,再打开即可)
    在这里插入图片描述
    2、在导入ECS页面,按如下参数进行配置

    • 用户名:Administrator
    • 密码:购买 ECS 时设置的密码
    • 端口:5986
    • 勾选声明,点击“添加”按钮

    在这里插入图片描述

    3、返回主机信息页面,可以看到ecs已被添加到主机组,并连通性验证成功

    在这里插入图片描述

    9.部署应用

    1、按照路径构建&部署-部署路径进入部署服务,点击新建任务按钮

    在这里插入图片描述
    2、部署模板选择空白模板,点击下一步按钮

    在这里插入图片描述
    3、在部署步骤页面,以此从右侧向左侧添加选择部署来源解压文件删除文件执行 PowerShell脚本执行 PowerShell 命令步骤(可以通过搜索栏进行查找)

    在这里插入图片描述
    4、按如下进行配置选择部署来源步骤详情

    • 选择源类型:构建任务
    • 构建任务:选择之前创建的构建任务
    • 主机组:选择之前创建的主机组
    • 下载到主机的部署目录:C:/iis_deploy

    在这里插入图片描述
    5、按如下进行解压文件步骤详情配置

    • 主机组:选择之前创建的主机组
    • 解压文件路径:C:/iis_deploy/superjokes.zip
    • 解压目录:C:/iis_deploy/superjokes

    在这里插入图片描述
    6、按如下进行删除文件步骤详情配置

    • 主机组:选择之前创建的主机组
    • 删除路径:C:/iis_deploy/superjokes.zip

    在这里插入图片描述
    7、按如下进行执行 PowerShell 脚本步骤详情配置

    • 主机组:选择之前创建的主机组
    • PowerShell 脚本路径:C:/iis_deploy/superjokes/web.ps1
    • 脚本执行参数:8080 Superjokes Integrated v4.0 C:\iis_deploy\superjokes C:/LogFiles

    在这里插入图片描述
    8、按如下进行执行 PowerShell 命令步骤详情配置

    • PowerShell 命令:iisreset

    在这里插入图片描述
    9、点击保存并执行按钮,界面会自动跳转到部署任务执行界面,左侧显示部署步骤执行进度,右侧打印部署日志。

    出现如下图,表示部署任务执行成功

    在这里插入图片描述

    10.应用访问

    1、应用部署任务执行成功后,就可以在浏览器进行访问了。访问地址:http://ECS 公网 IP:8080(ECS 公网 IP 即之前步骤里创建的 ECS 的公网 IP)

    出现如下界面,表示部署成功

    在这里插入图片描述

    11.资源释放

    本次实验用到的DevCloud用户数小于等于5是不计费的,ECS是按需计费,如果不再使用,避免持续计
    费,需要进行资源释放操作。

    11.1 释放 ECS 资源

    回到ecs列表页,按下图进行ecs资源释放

    在这里插入图片描述
    在这里插入图片描述
    删除资源需要使用注册的邮箱/手机等方式进行身份验证,按引导操作即可

    11.2 释放 RDS 资源

    回到ecs列表页,按下图进行ecs资源释放

    在这里插入图片描述

    删除资源需要使用注册的邮箱/手机等方式进行身份验证,按引导操作即可

    总结

    本文主要介绍的是使用华为云DevCloud+ECS+MySQL搭建超级冷笑话网站。

    本网站主要针对.NET开发人员,早期.NET相关网站都是基于Windows部署的,着重讲解了云数据库的使用和ECS服务器环境的搭建和部署,最后使用DevCloud进行一站式部署。

    通过以下步骤实现了华为云对.NET相关应用部署:创建项目、创建代码仓库、创建数据库、修改代码、编译构建、部署、环境准备、导入主机、部署应用、应用访问、资源释放。

    相信通过以上实操能够为.NET相关开发者提供覆盖软件开发全生命周期的云上开发操作指导。


    【购物节已开启,个人开发者的专属集市AppBazaar来啦(所有商品购物节期间免费体验)】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/381337
    此外,在(https://bbs.huaweicloud.com/activity/suggestion.html)提出您的宝贵建议,标题以【云驻计划-定向征文】开头,还有机会赢取额外奖励。

  • 相关阅读:
    【操作系统】第三章 —— 如何管理物理内存
    YOLOv5算法改进(17)— 手把手教你去更换损失函数(IoU/GIoU/DIoU/CIoU/EIoU/AlphaIoU/SIoU)
    RabbitMQ-死信交换机
    挑战Typescript项目中的strict编译模式
    vite项目运行后只显示主机地址
    C++【类型转换】
    四元数Quaternion的基本运算
    PDCA方法论
    【Transformers】第 1 章 :Hello Transformers
    UVA208 消防车 Firetruck
  • 原文地址:https://blog.csdn.net/aa2528877987/article/details/128105130