828华为云征文|基于Flexus云服务器X实例的应用场景-部署自己的博客系统

news2024/9/22 19:42:01

🔴大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂


先看这里

    • 写在前面
    • 效果图
    • 部署拾壹博客系统
      • 项目架构
      • 项目特点
      • 详细介绍
      • 部署博客系统
      • 更改redis的信息
      • 打包后端
      • 上传jar到服务器中
      • 打包前端项目
    • 总结

写在前面

华为云828云服务器活动来啦,B2B企业节正在举办,Flexus X实例的促销也非常给力,详情可以看这里:点我查看

具体的活动规则可以参考如下:

活动对象:

(1)新用户专享:华为云官网已完成注册和实名认证,且从未购买过华为云资源的用户(客户等级是V0)才可购买;

(2)企业新客专享:仅从未购买过华为云资源(客户等级是V0),且已完成企业实名认证用户可购买;

(3)产品新客专享:华为云官网已完成注册和实名认证,且从未购买过相关华为云资源的用户(不限客户等级)才可购买;

(具体用户范围以届时活动页面展示为准)

活动时间:

2024年8月22日-2024年9月15日(活动期间如有调整,以届时活动页面展示为准)
在这里插入图片描述

这不,我手里正好拿到了一台华为云Flexus X实例的服务器,经过几天的评测,整体来说还是很满意的。今天,我们继续基于华为云Flexus X实例的服务器,结合实际场景,部署一款精美的博客系统。

效果图

还是老规矩,在看正文之前,我们先看看效果图,毕竟,长篇大论不如一幅图表现的更加直观。

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

上面,我简单的了放了三张图片,说实话,这种小清新的风格,大部分开发者还是比较喜欢的,我目前的博客也是用的他的,不过很老啦,再加上好多自己的业务也在里面,就一直没有更新。

下面,我们来看看具体如何进行部署。

部署拾壹博客系统

一款vue+springboot前后端分离的博客系统,博客后台管理系统使用了vue+elmentui开发,后端使用Sa-Token进行权限管理,支持动态菜单权限,动态定时任务,文件支持本地和七牛云上传,使用ElasticSearch作为全文检索服务,支持QQ、微信公众号扫码、码云、GitHub登录。实现即时通讯聊天室功能

项目架构

在部署之前,我们有必要先了解一下拾壹博客的整个架构:

blog
├── shiyi-admin    --  后台管理系统的controller模块
├── shiyi-common        --  通用模块
├── shiyi-generate        --  代码生成模块
├── shiyi-quartz        --  定时任务模块
├── shiyi-server        --  博客启动类模块
├── shiyi-web           --  门户接口模块

该博客采用的是前后端分离技术,后端使用springboot+mybatis plus。前端采用的是vue2,据说最近还在升级vue3,我是不太会vue3,所以一直研究的事vue2。

项目特点

  • 后台参考"vue-element-template"设计,侧边栏,历史标签,面包屑自动生成。
  • 采用Markdown编辑器,写法简单。
  • 评论支持表情输入回复等
  • 前后端分离部署,适应当前潮流。
  • 接入第三方登录,减少注册成本。
  • 留言采用弹幕墙,更加炫酷。
  • 支持代码高亮和复制,图片预览,深色模式等功能,提升用户体验。
  • 搜索文章支持高亮分词,响应速度快。
  • 新增文章目录、推荐文章等功能,优化用户体验。
  • 新增aop注解实现日志管理
  • 支持动态权限修改,采用RBAC模型,前端菜单和后台权限实时更新。
  • 后台管理支持修改背景图片,博客配置等信息,操作简单,支持上传相册。
  • 代码支持多种搜索模式(Elasticsearch或MYSQL),可支持配置。
  • 代码支持多种文件上传模式(七牛云oss或本地上传),可支持配置。
  • 代码遵循阿里巴巴开发规范,利于开发者学习。
  • 使用netty+websocket技术实现博客群聊和单聊功能

详细介绍

  • 前端: vue3.0 + pinia + vue-router + axios + element-plus + echarts
  • 后端: SpringBoot + nginx + docker + sa-token + Swagger2 + MyBatisPlus + Mysql + Redis + elasticsearch
  • 其他: 接入QQ、微博、码云、微信公众号等第三方登录,接入七牛云对象存储
  • 服务器: 腾讯云2核4G CentOS7.6
  • 对象存储: 七牛云OSS
  • 最低配置: 1核2G服务器(关闭ElasticSearch)

部署博客系统

该博客暂未提供docker部署,所以我们只能采用源码的方式部署。

  1. 拉取仓库代码:
git clone https://gitee.com/quequnlong/shiyi-blog.git

在这里插入图片描述
2. 导入数据库

接下来,我们使用工具连接上mysql数据库(数据库安装的方式暂不在这里讲解)

打开我们拉下来的项目,找到blog.sql这个文件,他就是数据库脚本。

在这里插入图片描述

在mysql工具中,先新建一个名为blog的数据库。

在这里插入图片描述

接下来,我们导入刚刚找到的blog.sql文件的脚本。

在这里插入图片描述
可以从图中看到,我们已经导入成功。

更改redis的信息

数据库设置好了之后,下面我们需要需要设置一下redis的配置信息,我们需要找到项目中的配置文件,路径在这里src/main/resources/application.yml,在这个yml文件中,找到redis这个配置,修改一下Host为我们服务器的地址,端口和密码都按照实际情况更改:

在这里插入图片描述

另外,一定要在yml文件中,修改一下数据库的配置信息,比如ip地址,端口,以及密码。

在这里插入图片描述

下面,我们来启动一下项目。

在这里插入图片描述

如果看到和我一样的输出信息,则代表后端没有问题,已经成功启动。

打包后端

如果能启动,则表示服务和配置都是没有问题的,下面我们来继续下一步–打包。

先点击这个clean,清空一下缓存,不然可能会导致出现莫名的错误。
在这里插入图片描述
执行完毕后,继续双击下面的package,执行打包的操作。

然后进行等待。

在这里插入图片描述
如图展示,证明打包成功。

上传jar到服务器中

首先,我们需要再服务器上新建个目录,我这边在/home/project 这个目录下创建了个blog的目录,如图:

在这里插入图片描述

然后我们将包传入这个地方:

千万别传错了哈,是这里的shiyi-blog.jar这个包,因为打包后,他每个模块都会有这个名字一样的包,传错了就没法正常使用了。

在这里插入图片描述
我这边已经传输成功,然后我们通过下面的命令来启动后端服务:

nohup java -jar shiyi-blog.jar &

打包前端项目

下面,我们还是使用idea或者vscode打开前端项目,先执行命令:

npm install

安装一下依赖,安装的时候可能比较长,耐心等待即可。

注意:前端是有bolg-admin和bolg-web两部分,打包方式都一样。

在这里插入图片描述

两个端都需要执行,执行完毕后,我们开始打包。打包的方式很简单,我们找到package.json这个文件,然后点击build:prod前面的绿色小箭头即可。

在这里插入图片描述

等待执行完毕后,我们将dist目录上传到服务器中,如图所示:

在这里插入图片描述
接下来,我们在nginx中配置一下就可以访问啦,nginx配置方式如下:

 ##博客项目
     server {
        listen       80;
        listen       443 ssl http2;
        server_name  aaaa.team;
        gzip on;
         gzip_vary on;
         gzip_comp_level 9;
         gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
         gzip_disable "MSIE [1-6]\.";
       gzip_min_length 2048;
        
        if ($server_port !~ 443){
            rewrite ^(/.*)$ https://$host$1 permanent;
        }
        
        #证书地址
        ssl_certificate      /home/project/https/aaa.team_bundle.pem;
        ssl_certificate_key   /home/project/https/aaa.team.key;
        ssl_prefer_server_ciphers on;
      
      # 博客项目前台
       location / {
            root   /home/project/blog/web-dist;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
        
        #博客项目后台
        location /admin {
            alias   /home/project/blog/admin-dist;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
        
        
        #公众号小游戏
        location /games {
            alias   /home/project/blog/web/games/fxq;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
       
        ##后台接口
        location ^~ /shiyi/ {
            proxy_pass http://127.0.0.1:8800;
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
        }
        
      
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    ## server结束

然后我们就可以通过上面配置的域名访问刚刚部署的博客项目啦,如下所示:

在这里插入图片描述

总结

这款博客总体来说,要求的服务器配置不是很高,只要求了1-2的服务器,我们这款服务器无论是从配置上还是性能上,都要远超于官方的要求,所以部署完成后,速度非常快。

最后,如果正好有服务器需求的伙伴,强烈推荐大家趁现在有828的活动,还有8280的优惠券,抓紧入手吧~活动地址在这里:点我查看

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2111166.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【加密社】如何根据.dat文件恢复密钥

加密社 看了这篇指南,你将了解助记词和密钥地址(qianbao)背后的基本原理。 以及,如何找回你的大饼密钥。 Not your key, not your coin 如果你不掌握自己加密货币钱包的私钥,那么你实际上并不能完全控制你的资产 在当今…

每日OJ_牛客_走迷宫(简单bfs)

目录 牛客_走迷宫(简单bfs) 解析代码: 牛客_走迷宫(简单bfs) 走迷宫__牛客网 解析代码: 采用一个二维数组,不断的接受迷宫地图(因为有多个地图),获取到迷宫地图后,采…

智能匹配新高度:相亲交友系统如何运用AI技术提升用户体验

在数字化时代,相亲交友系统正逐渐融入人工智能(AI)技术,以提升用户体验和匹配效率。AI的引入不仅改变了传统的交友方式,还为用户带来了更加个性化和精准的交友体验。以下是一篇关于如何运用AI技术提升相亲交友系统用户…

第L8周:机器学习|K-means聚类算法

本文为🔗365天深度学习训练营中的学习记录博客 🍖 原作者:K同学啊 | 接辅导、项目定制 🚀 文章来源:K同学的学习圈子深度学习 聚类算法的定义: 聚类就是将一个庞杂数据集中具有相似特征的数据自动归类到一…

YOLOV5入门教学-common.py文件

在 YOLOv5 框架中,common.py 文件是一个核心组件,负责定义深度学习模型的基础模块和常用操作。无论是卷积层、激活函数、特征融合还是其他复杂的模型结构,common.py 都提供了灵活且高效的实现。在这篇文章中,我们将深入解析 commo…

【科普知识】一体化电机掉电后“位置精准复位“机制与规律

在工业自动化、机器人技术及精密控制领域,电机作为核心执行元件,其稳定运行和精确控制对于整个系统的性能至关重要。 然而,电机在运行过程中可能会遭遇突然断电的情况,这会导致电机失去驱动力并停止在当前位置,甚至在…

基于YOLOv10的垃圾检测系统

基于YOLOv10的垃圾检测系统 (价格90) 包含 [CardBoard, Glass, Metal, Paper, Plastic] 5个类 [纸板, 玻璃, 金属, 纸张, 塑料] 通过PYQT构建UI界面,包含图片检测,视频检测,摄像头实时检测。 (该系统可以根据数据训练出的…

Minimax-秋招正式批-面经(计网)

6. websocket和http区别 websocket知识点总结_防火墙 websocket-CSDN博客 相同点 都是基于TCP协议,都是可靠性传输协议都是应用层协议 不同点 HTTP 类型: 请求-响应式的无状态协议,半双工通信,同一时刻只能一个方向上有动作通…

变阻箱和负载箱的区别

变阻箱和负载箱是两种常见的电力设备,它们在电力系统中起着重要的作用。虽然它们都是用来调节电流的,但是它们的工作原理和用途有很大的区别。 首先,我们来看看变阻箱。变阻箱是一种可以改变电阻值的设备,它的主要作用是调节电流…

el-table使用type=“expand”根据数据条件隐藏展开按钮

一&#xff1a;添加className <el-table :data"tableData" border :loading"loading" :row-class-name"getRowClass" expand-change"expandchange"><el-table-column type"expand"><template #default"…

基于51单片机的智能小车转向控制系统设计与实现

文章目录 前言资料获取设计介绍功能介绍具体实现截图参考文献设计获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师&#xff0c;一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对…

PCB散热设计

随着电子设备性能的不断提升&#xff0c;电路板上的元器件集成度越来越高&#xff0c;发热量也随之增加。如何有效管理这些热量&#xff0c;保证电路板在高温环境下的稳定运行&#xff0c;成为设计过程中一个不可忽视的问题。如果散热不佳&#xff0c;电子元件可能会因过热导致…

python3删除es 45天前索引,生产环境验证过

本人es版本 环境 pip install --upgrade elasticsearch==7.16.3代码 from datetime import datetime, timedelta from elasticsearch import Elasticsearch

通过15张图带你掌握网络抓包工具Wireshark必备使用技巧

学习TCP/IP等网络协议时异常枯燥&#xff0c;因为网络问题看不见摸不着&#xff0c;很难深入理解其工作原理&#xff0c;而Wireshark正是将这些知识以一种网络数据包、可视化的形式呈现给大家&#xff0c;接下来博主带大家掌握Wireshark的必备技能&#xff01;如有任何疑问&…

【GPT】Coze使用开放平台接口-【5】API 调用

我们在机器人里面引用工作流&#xff0c;当然也可以通过 API 直接调用工作流&#xff0c;coze 也提供了这一套的 API 接口。coze 的 API 接口肯定也不只是接入工作流&#xff0c;Bots&#xff0c;文件&#xff0c;知识库等&#xff0c;都有相关接口。这个文档我们也只专注在工作…

IntelliJ IDEA 中实现 Spring Boot 项目 的自动编译

要在 IntelliJ IDEA 中实现 Spring Boot 项目的自动编译&#xff0c;可以通过以下步骤进行设置&#xff1a; 1.添加 Spring Boot DevTools 依赖 在项目 pom.xml文件中添加Spring Boot DevTools依赖。这个依赖提供了自动编译和热更新的功能。依赖的配置如下&#xff1a; <d…

Word快速重复上一步操作的三种高效方法

在日常工作、学习和生活中&#xff0c;我们经常需要执行一系列重复性的操作。这些操作可能简单如复制粘贴、调整图片大小&#xff0c;也可能复杂如编辑文档、处理数据等。为了提高效率&#xff0c;掌握快速重复上一步操作的方法显得尤为重要。本文将介绍三种高效的方法&#xf…

【扩散模型(十)】IP-Adapter 源码详解 4 - 训练细节、具体训了哪些层?

系列文章目录 【扩散模型&#xff08;一&#xff09;】中介绍了 Stable Diffusion 可以被理解为重建分支&#xff08;reconstruction branch&#xff09;和条件分支&#xff08;condition branch&#xff09;【扩散模型&#xff08;二&#xff09;】IP-Adapter 从条件分支的视…

论文阅读 - Coordinated Activity Modulates the Behavior and Emotions ofOrganic Users

协调活动调节有机用户的行为和情绪&#xff1a;有关加沙冲突的推文案例研究 https://dl.acm.org/doi/pdf/10.1145/3589335.3651483 目录 摘要 1 INTRODUCTION 2 DATA 3 METHODOLOGY 3.1 Coordinated Activity Detection 3.3 用户互动动态特征 3.4 Organic Users’ Behav…

系统架构师考试学习笔记第三篇——架构设计高级知识(17)云原生架构设计理论与实践

本章知识考点&#xff1a; 第17课时主要学习云原生架构设计理论与实践。根据考试大纲&#xff0c;本课时知识点会涉及单选题型&#xff08;约占2~4分&#xff09;、案例题&#xff08;25分&#xff09;和论文题&#xff0c;本课时节内容偏重于方法掌握和应用&#xff0c;根据以…