上手华为软开云DevOps前后端分离实践之-前端Vue

简介: 上手华为软开云DevOps前后端分离实践之-前端Vue

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第25天,点击查看活动详情

简介

前面实现了SpringBoot项目华为软开云的一键操作。这次来搞Vue,实现前后端完全分离。
这里我们仍然是先忽略华为软开云的项目管理功能(`Scrum`,看板里的需求规划、任务指派、工时分配),测试功能,文档管理功能,CloudIDE等;重点关注`项目创建、代码托管、编译构建、部署、发布以及流水线功能`;同时代码仅供示例,重在熟悉软开云的流程。
效果

IY8H4)GO[H@%9VJRX~ZX}0Q.png

Note: 以下步骤中有些与上一篇后端项目的搭建一致,所以这里做了省略,如有疑问,可以查看 后端 SpringBoot


创建项目


代码托管


  • 创建仓库

  • 选择模板、语言

  • 创建 SSH 并上传公钥

略(这一步一台机器操作一次即可)

通过git clone repo_url下载到本地。

  • 创建 Vue 脚手架项目

8@FOY%QRYX]WD`T[PP8MEWF.png

  • 前端代码示例

_XGP)(F[}LH821ZMD1T0`MB.png

  • push 代码到华为云

A2~~H%M_{@F%6]}JNCHT9{6.png

Note: 开发环境跨域

A5)ZM9I27H3LK]E)~EKH3HA.png

编译构建


可实时查看构建全量日志

  • 构建步骤


ICAO8}F[8F2Y7~(Y9ZVVX%I.png

Note: 深坑:默认仅将inidex.html传至发布包,竟然忽略了static目录!

这是实际构建应该生成的目录:

5QV@W5GRS@R2_EA}7VAKA]I.png

  • 官方文档

D]@B(@M8$[Y_{6Z8WGU{Y$K.png

So,也可以理解,服务器从安全的角度考虑,不支持自动创建文件夹。以下是解决方法:传到发布仓库时,先进行压缩,部署到服务器上再进行解压缩。

  • 添加执行Shell命令的构建步骤


R98NS[V09]WY@70398W$L@N.png

Note: 先添加压缩脚本,然后注意上传到软件发布库的构建包路径也做了修改。


发布包


这里的发布包可以在部署时进行选择

(J4RHIFT_8P4([HW$`_22B1.png


部署


可实时查看部署全量日志


  • 主机组,公网 IP

部署时,因为我们的项目要部署到一个公网可访问的服务器上,需要一个具有公网 IP 的主机组。点击上图中的创建主机组,完成主机组的创建后,需要往里添加主机,这时需要一个具有公网 IP 的主机,可以是华为的云主机,也可以是阿里云、腾讯云的主机,只要有公网 IP 即可。这里以华为云的主机为例:

2@H7}8O269W`%{M8{WKSLY5.png


将上述公网 IP 之一与一个主机实例绑定即可。

~R)B}JF}AKX59`9V_ROQVSX.png

  • 部署步骤配置

由于华为软开云没有对Vue项目的官方部署模板,下述步骤为自定义部署步骤:

N9[$RO%JZF}2K7Q8`HLVE6U.png

}UM921}NYY(DYNRA%NJRP0B.png

GM376ZNJ(VKDRJOHM5(C)VU.png

Note:

  1. 其中选择部署来源这一步,有两种选择:软件包构建任务。前者可选定某一次的发布包,后者可配置总是以最新的(Latest)发布包进行部署;
  2. 执行Shell命令的第一步是先将我们之前发布包进行解压,得到Vue生产环境下所有的静态资源;
  3. 执行Shell命令的第二步是安装依赖:首先配置全局npm包安装路径,接着全局安装nrm(注意软连接,这是Linux下全局安装npm包的一个坑),全局安装pm2;然后进入项目目录,安装依赖,最后由pm2守护启动。

PS:nrm 全局安装后,可切换npm包的镜像源地址;pm2 全局安装后,可切换npm包的镜像源地址;进入项目目录 指的是一个node.js后端服务项目,实现了静态资源服务器,以及Vue打包项目在生产环境下的跨域,将在下一篇文章中作详细介绍。

部署结果


}NGORW2FR9466H)_C)6[R9D.png

流水线


流水线功能可以由我们自定义一套自动执行流程,将前面的:构建、代码检查、部署添加到流水线,可实现一键部署。尤其是在移动端 APP DevCloud中,实现远程一键部署功能。

0G$4YIE`)9OW$J)[RM5Z23E.png

GZL7VS_M_M}KC6@9XZTMM15.png

A`U]4_8KO@SR{M]3P8ICXQV.png

至此,借助流水线,我们实现了在华为软开云上基于Vue的前端项目的一键检查、编译、部署。后续会实现基于Node.js的静态资源服务器(生产环境下 Vue 的跨域),敬请期待~


后记


  • 一点思考
    虽然软开云的思想是希望提升开发、运维的效率,尤其是将运维人员将各类Bash命令、Shell脚本中解放出来,但这其实是对运维人员在Linux应用方面提出了更高的要求。

Source Code: Github


If you have any questions or any bugs are found, please feel free to contact me.

Your comments and suggestions are welcome!

目录
相关文章
|
26天前
|
运维 安全 Devops
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
在数字化转型的浪潮中,企业对于IT基础设施的要求越来越高,不仅需要快速响应市场变化,还要确保系统的稳定与安全。本文深入探讨了如何通过融合DevOps文化和容器化技术来构建一个高效、稳定且易于管理的云基础设施。通过实际案例分析,阐述了持续集成/持续部署(CI/CD)流程的优化、自动化测试、监控以及日志管理等关键环节的实施策略,旨在为运维专业人员提供一套切实可行的解决方案。
23 3
|
1月前
|
JavaScript 前端开发
vue前端下载,实现点击按钮弹出本地窗口,选择自定义保存路径
这个不用代码实现(网上也找不到方法可以调出另存为窗口),更改浏览器设置就可以,否则,现在的浏览器都是默认直接保存到下载路径中
57 3
|
17天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
78 0
|
29天前
|
运维 Kubernetes Devops
构建高效可靠的云基础设施:DevOps与容器化技术融合实践
【2月更文挑战第30天】 在当今快速迭代和竞争激烈的软件开发领域,传统的IT运维模式已难以满足业务发展的需要。本文将探讨如何通过整合DevOps文化和容器化技术,构建一个既高效又可靠的云基础设施。文章首先回顾了DevOps的核心理念及其对运维工作流的影响,接着深入讨论了容器化技术的优势和挑战,并提出了一套结合两者的实施方案。最后,通过案例分析展示了该方案在实际环境中的应用效果和潜在益处。
|
4天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
6天前
|
运维 Devops 持续交付
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
【4月更文挑战第13天】 在当今快速迭代和持续部署的软件开发环境中,传统的IT运维模式已难以满足业务发展的需求。本文聚焦于如何通过融合DevOps理念与容器化技术,构建一个高效、稳定且易于管理的云基础设施。文章将探讨持续集成/持续交付(CI/CD)流程的优化、容器化技术的最佳实践、以及微服务架构下的应用管理,以期为企业提供一种改进运维效率、加速产品上市时间,同时保障系统稳定性的解决方案。
|
8天前
|
JavaScript 前端开发 API
游戏开发入门:Python后端与Vue前端的协同工作方式
【4月更文挑战第11天】使用Python后端(Flask或Django)和Vue.js前端开发游戏变得流行,能提高开发效率和可维护性。本文指导如何构建这样的项目,包括设置环境、创建虚拟环境、搭建后端API及前端Vue组件,强调前后端协作和API接口的重要性。这种架构促进团队合作,提升代码质量和游戏体验。
|
9天前
|
供应链 JavaScript 前端开发
使用Django和Vue实现电子商务网站的后端和前端
【4月更文挑战第10天】本文介绍了使用Django和Vue构建电子商务网站的后端与前端方法。Django作为Python的Web框架负责后端,其模型-视图-控制器设计简化了商品管理、购物车和订单处理。Vue.js用于前端,提供数据驱动和组件化的用户界面。通过定义Django模型和视图处理请求,结合Vue组件展示商品和管理购物车,开发者可构建交互性强的电商网站。虽然实际开发涉及更多细节,但本文为入门提供了基础指导。
|
21天前
|
运维 Kubernetes Devops
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
随着企业数字化转型的不断深入,传统的IT运维模式已经难以满足快速迭代和持续交付的需求。本文将探讨如何通过结合DevOps文化与容器化技术,构建一个既高效又稳定的云基础设施。文章首先概述了DevOps的核心理念及其在现代运维中的重要性,然后详细介绍了容器化技术,特别是Docker和Kubernetes在实现微服务架构中的应用。最后,文中通过案例分析展示了这一融合实践如何在真实环境中提升运维效率和系统稳定性。
20 7
|
24天前
|
运维 Kubernetes 监控
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
在当今云计算时代,企业追求敏捷性、可扩展性以及成本效益的云基础设施。本文将探讨如何通过DevOps文化与容器化技术的融合,打造一个既高效又稳定的运维环境。文章不仅阐述了DevOps和容器化技术各自的优势,还提供了一个具体的实施案例,展示了这种结合如何优化资源利用、提高部署速度并降低运维复杂性。