华为云凤凰商城项目实践实验三——持续部署与发布

2024-01-01 09:20

本文主要是介绍华为云凤凰商城项目实践实验三——持续部署与发布,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

实验介绍

实验目的

实验过程

3.1购买并配置弹性云服务器

3.2使用 CodeArts 部署服务配置主机环境

3.3使用自动化部署实现一键部署

3.4持续交付流水线

3.4.1配置流水线串接代码检查,编译构建和自动化部署步骤

3.4.2更新流水线配置,实现代码变更触发的持续交付流水线

3.4.3流水线配置高级功能

3.5资源释放


实验介绍

在本实验中,学习

⚫ 如何购买并配置指定规格的弹性云服务资源

⚫ 如何在弹性云服务器上配置好相应的依赖工具

⚫ 如何在 CodeArts 中添加主机组并进行主机授信

⚫ 如何获取 SWR 镜像仓库的账号信息

⚫ 如何创建 "部署任务",完成应用的 Docker 镜像拉取并部署

⚫ 如何创建流水线任务,从而实现持续部署与交付。

实验目的

⚫ 掌握如何购买弹性云服务资源 ECS

⚫ 理解并掌握使用 CodeArts 部署 Docker 镜像

⚫ 理解 SWR 镜像仓库的功能与使用

⚫ 理解并掌握使用 CodeArts 流水线服务实现持续部署与交付

实验过程

3.1购买并配置弹性云服务器

通过本节,学习如何购买并配置 Linux 系统 ECS 主机。 本章节使用的是弹性云服务器 ECS,您也可以使用自己的 Linux 主机。

①购买 ECS 主机。

登录弹性云服务器ESC官网,单击"立即购买",进入弹性云服务器控制台。

使用以下配置

点击“下一步:网络配置”

使用默认配置,点击“下一步:高级配置”

设置云服务器名称和密码,点击“下一步:确认配置”

勾选协议声明,点击“立刻购买”

点击返回云服务器列表

看到云服务器已成功创建

②单击云主机名称,进入主机管理页面。选择"安全组"页签,单击"配置规则",进入安全组管理界面。

选择"入方向规则"页签,单击"添加规则",添加一条入方向规则"允许访问 5000 以及 5001 端口",优先级设置为1。

进入项目,单击页面左侧导航"设置 > 通用设置>基本资源管理",单击"新建主机集群"。

输入主机组名,选择Linux直连模式,单击"保存"。

当出现以下提示时,表示主机添加成功。

3.2使用 CodeArts 部署服务配置主机环境

部署(CloudDeploy)提供可视化、一键式部署服务,支持并行部署和流水线无缝集成,支持 脚本部署,容器部署等部署类型,支持 java、node.js、python 等多种技术栈,实现部署环境标 准化和部署过程自动化。

凤凰商城软件要部署到前一节购买的 ECS 服务器主机上,需要配置主机环境,安装凤凰商城 运行所需的软件。本节将为 ECS 云主机安装 Docker 以及 Docker-Compose。

①进入项目,单击页面左侧导航"持续交互 > 部署",进入部署服务。

点击左上角"新建应用",自定义应用名称,进入下一步

点击“使用空白模板”

②在部署步骤中添加步骤"安装/卸载 Docker"

点击“新建”环境

输入环境名称,点击“保存”

点击“导入主机”

设置主机组为前述已添加的授信主机组

点击“立刻前往”进行主机创建

点击"新增目标主机"

按照之前购买的云服务器信息填写

主机添加成功

返回配置步骤界面,选择刚配置的环境

③点击"安装/卸载 Docker"方框下方的 ,继续添加步骤"执行 shell 命令",

在 shell 命令框中输入如下命令行

sudo apt-get install libssl-dev libffi-dev python-dev build-essential libxml2-dev libxslt1-dev -y pip3 install six --user -U

pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple docker-compose==1.17.1

点击“执行shell命令”下方+号,安装 python3

选择Python-3.7.1

保存并部署,等待成功安装。

3.3使用自动化部署实现一键部署

通过本节,学习如何使用部署服务结合弹性云服务器 ECS,完成应用的自动化部署。

①持续部署配置。进入项目,单击页面上方导航"持续交付 > 部署",进入部署服务。找到部署任务"phoenix-sample-standalone",点击最右侧,选择“编辑”。

选择"部署步骤"页签,单击部署步骤"选择部署来源",编译以下信息。

选择源类型:选择"构建任务"。

主机组:按照相同方法新建环境。选择在添加授信主机中创建的主机组。选择环境最后,系统会弹框确认"是否将后续步骤的环境也修改为phoenix-sample-env?",单击"确定"即可。

请选择构建任务:选择"phoenix-sample-ci"。

③"解压文件"与"执行 shell 命令"页签保持默认配置即可。

④选择"参数设置"页签,根据 SWR 服务登录指令填写参数。登录指令通过 SWR 控制台获 取,操作方式如下:

登录容器镜像服务SWR官网,单击"立即使用",进入容器镜像服务控制台。检查页面左上方的"区域"列表,选择与编译构建任务所在区相同的区域。

单击"登录指令",系统生成并弹框显示 docker login 指令。 登录指令中:

-u 之后的字符串为用户名(docker-username)

-p 之后的字符串为密码(docker-password)

最后的字符串为服务器地址(docker-server)

⑤单击"保存并部署",启动部署任务。系统自动跳转至"部署详情"页面,可以查看任务 执行进展。当出现以下页面时,表示任务执行成功。

⑥部署异常情况排查

⑦验证部署结果。打开浏览器,输入"http:// xxx.xxx.xxx.xxx:5000",即可访问凤凰商城。

3.4持续交付流水线

在本实验中,学习

⚫ 如何创建"流水线"任务,完成应用程序持续交付流水线的搭建

⚫ 如何创建实现代码变更自动触发持续交付流水线任务,完成应用的自动化测试以及部署

⚫ 在"流水线"中添加"人工审核"功能

3.4.1配置流水线串接代码检查,编译构建和自动化部署步骤

通过本节,学习如何创建流水线任务,完成应用程序持续交付流水线的搭建。

①创建并触发持续交付流水线。进入项目,单击页面左侧导航" 持续交付> 流水线",进 入流水线服务。

②单击"新建流水线"。

模板默认。

③编辑流水线。

修改流水线名称为 phoenix-sample-pipline

④单击阶段1"新建任务"中添加任务。在右侧滑出框中,类型选择"Check代码检查", 任务勾选"phoenix-codecheck-worker",单击"保存"。

⑤在"阶段2",添加构建任务"phoenix-sample-ci"。

⑥在"构建阶段"后添加并编辑"测试阶段"

添加任务“接口测试”并选择“迭代 4”

新建接口自动化测试套件

⑦在“部署发布”阶段添加任务

⑧流水线任务阶段设置完成后点击"保存并执行",启动流水线。当出现以下页面时,表示 任务执行成功。

创建实现代码变更自动触发持续交付流水线任务,完成应用的自动化构建部署。

3.4.2更新流水线配置,实现代码变更触发的持续交付流水线

找到流水线任务"phoenix-sample-pipeline",单击此任务对应操作列中的图标 ,进 入"流水线配置"页面。 点击"执行计划"页签,打开“代码提交时触发”,单击"保存"。

设置完成后,当所选分支有代码变更提交时,将自动触发该任务。

3.4.3流水线配置高级功能

在阶段"部署"下,单击"添加任务"。在右侧滑框中,选择类型"流水线控制",勾选"人工审核",并在"审核人"下拉列表中勾选所需的审核人。

将“人工审核”拖动到“Deploy部署”前

启动流水线,当执行到"人工审核"时,页面中将弹框提示任务需审核。

审核人进入流水线任务"phoenix-sample-pipeline"的详情页。单击"批准",流水线将自动继续执行。单击"驳回",流水线将中止执行。

3.5资源释放

为了避免不必要的费用,如果您在项目课程实践完成后,无需再使用这些资源,建议您参考以 下操作释放弹性云服务器资源。

①返回 ESC控制台,选择云主机,然后点击"更多"→"删除"。

②在弹出的对话框中勾选"释放云服务器绑定的弹性公网 IP 地址"和"删除云服务器挂载 的数据盘",然后点击"是",删除云主机,释放 ECS 资源。

③回到 CloudIDE 服务,删除 IDE 实列

这篇关于华为云凤凰商城项目实践实验三——持续部署与发布的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/558808

相关文章

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

在Java中使用OpenCV实践

《在Java中使用OpenCV实践》用户分享了在Java项目中集成OpenCV4.10.0的实践经验,涵盖库简介、Windows安装、依赖配置及灰度图测试,强调其在图像处理领域的多功能性,并计划后续探... 目录前言一 、OpenCV1.简介2.下载与安装3.目录说明二、在Java项目中使用三 、测试1.测

MyBatis-Plus 自动赋值实体字段最佳实践指南

《MyBatis-Plus自动赋值实体字段最佳实践指南》MyBatis-Plus通过@TableField注解与填充策略,实现时间戳、用户信息、逻辑删除等字段的自动填充,减少手动赋值,提升开发效率与... 目录1. MyBATis-Plus 自动赋值概述1.1 适用场景1.2 自动填充的原理1.3 填充策略

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

Olingo分析和实践之EDM 辅助序列化器详解(最佳实践)

《Olingo分析和实践之EDM辅助序列化器详解(最佳实践)》EDM辅助序列化器是ApacheOlingoOData框架中无需完整EDM模型的智能序列化工具,通过运行时类型推断实现灵活数据转换,适用... 目录概念与定义什么是 EDM 辅助序列化器?核心概念设计目标核心特点1. EDM 信息可选2. 智能类