当前位置: 首页 > java >正文

零基础入门 AI 运维:Linux 部署全栈项目实战(MySQL+Nginx + 私有化大模型)

目录

项目介绍

项目部署架构及各节点规划

各节点初始环境

MySQL数据库安装与数据导入

项目基础业务数据导入

安装Redis组件

阿里云对象存储OSS

项目接入阿里云OSS

开通百度千帆大模型授权

项目接入百度千帆大模型

后端服务部署

安装Nginx服务

前端服务部署


项目介绍

中州养老系统为养老院量身定制开发专业的养老管理软件产品;涵盖来访管理、入退管理、在住管
理、服务管理 财务管理等功能模块,涉及从来访参观到退住办理的完整流程。
项目原型访问地址:https://codesign.qq.com/s/459277624064324 密码: FSTI
中州养老项目分为两端,一个是管理后台,另外一个是家属端
管理后台:养老院员工使用,入住、退住,给老人服务记录,AI智能体体检报告分析(百度千帆)
等等
家属端:养老院的老人家属使用,查看老人信息,缴费,下订单,智能客服等等
业务主页效果:

总结:属于养老行业,共计分为两个端,一个管理后台系统(网页),另一个家属端(小程序)。

项目部署架构及各节点规划

项目部署架构

各节点规划

总结: 需要三个节点,mysql和redis一个节点,后端一个节点,Nginx一个节点,同时需要开通

里云OSS与百度千帆大模型。

各节点初始环境

准备服务器

1- 在阿里云申请三台ECS服务器

1- 在阿里云申请三台ECS服务器

 2- 使用MX连接三个服务器

3- 修改主机名字

 

总结:确保三个服务器节点均在一个可用区 ECS配置建议选择2核4GB配置以上 修改ESC服务器

主机名。

MySQL数据库安装与数据导入

安装Mysql

MySQL 是一个常用的关系型数据库软件,可以用来存储和管理数据,比如用户信息、订单记录
等。它简单高效, 适合小到个人网站,大到大型应用的需求。

常见数据库产品:
Oracle Database : 商用关系型数据库,性能强大,适合大型企业应用。
PostgreSQL : 开源关系型数据库,功能丰富,支持高级查询和扩展。
Microsoft SQL Server : 微软开发的关系型数据库,集成性强,适合 Windows 环境
安装文档地址: 仓库源MySQL安装教程-CSDN博客
总结:MySQL是一个数据库,用于存储应用系统的业务数据。MySQL安装一共六步,安装
MySQL仓库、安装MySQL、启动MySQL服务、配置MySQL、登录测试、防火墙配置(一般为关
闭状态)

项目基础业务数据导入

数据导入

1- 将项目的SQL脚本上传到服务器中: /opt/zzyl/sql
2- 执行以下MySQL命令,完成导入
cd /opt/zzyl/sql
mysql -uroot -pAa123456. < ry-zzyl.sql

3- 校验是否导入成功
mysql -uroot -pAa123456. -e 'show databases;'

安装Redis组件

Redis 是一个超级快的数据存储工具,它可以把数据保存在内存里,类似于一个高速缓存。它被广
泛用于需要 快速读写数据 的场景。例如:缓存数据、实时数据分析、消息队列等
安装文档:安装单机版本Redis-CSDN博客

总结:Redis是一个内存存储数据库,安装Redis分为5步,下载安装、配置、启动、测试、打开防

火墙(一般关闭状态)

阿里云对象存储OSS

阿里云的 OSS(Object Storage Service)是一个 云端对象存储服务,简单来说,它就像是一个
网上的硬盘,用来存储和管理各种文件(比如图片、视频、文档等)。你可以把它理解为一个可以
随时访问、随时上传文件的网盘,不过它比普通网盘更强大,专门为大规模的数据存储和管理设
计。
特点:
像硬盘,但在云上:你把文件存到阿里云的OSS上,就像把文件放进云端的一个“网盘”中,而这个
网盘可以存很多很多数据。
可以随时随地访问:无论你身处哪里,只要有网络,就可以随时上传、下载、管理这些文件。
适合大规模数据存储:不仅可以存普通文件,还能处理海量数据,比如网站的图片、视频,甚至是
备份文件等。
开通流程
步骤一:在阿里云中开通OSS服务
仅需要选择开通服务即可, 如果是第一次使用,可以直接选择免费试用
步骤二:进入到对象存储管理控制台
步骤三:创建存储backet桶(容器)
步骤四:进入bucket, 设置为公用, 方便访问
步骤五:生成访问accessKey,用于授权访问OSS服务
步骤五:生成访问accessKey,用于授权访问OSS服务
总结:阿里云OSS是一个云端对象存储服务,简单来说,它就像一个网上的硬盘,用来存储和管理
各种文件。

项目接入阿里云OSS

步骤一:打开生产环境配置文件

将配置文件拖到桌面上进行修改
步骤二:修改配置
授权ID
授权secret
oss创建的bucket桶名字

修改后, 记得将配置文件拖拽回去

开通百度千帆大模型授权

项目中, 主要是基于百度千帆大模型来分析用户的体检报告, 故需要注册百度千帆大模型APK, 从而
对接百度千帆大模型。 生产环境中, 一般为公司生产环境的百度千帆账号
注册地址:https://qianfan.cloud.baidu.com/
实名认证:
有了账号之后,我们需要个人实名认证,不然大模型调用不了,其中实名认证大家需要在手机端进
行操作在手机上下载一个百度智能云app,使用刚刚注册的账号进行登录,找到我的,个人中心,
可以进行实名认证操作。 注册后, 赠送20元优惠卷, 有效期1个月
注册登录
实名认证成功之后,我们继续在PC端来访问千帆大模型,地址:https://cloud.baidu.com/product-
s/qianfan_modelbuilder
进入到管理平台
开通模型服务
申请授权key:

项目接入百度千帆大模型

步骤一:打开生产环境配置文件

将配置文件拖到桌面上进行修改

步骤二:修改配置

后端服务部署

Java是美国sun公司在1995年推出的一门计算机高级编程语言。2009年sun公司被Oracle公司收购

那么Java能做什么呢?
1- 桌面应用开发: 各种税务管理软件、IDEA等……
2- 企业级应用开发:微服务、大型互联网应用
3- 移动应用开发:Android、医疗设备
4- 服务器系统:应用的后台系统
5- 大数据开发: Hadoop 、Flink ……
6- 游戏开发:我的世界
作为运维开发人员, 就要把各种Java开发的应用部署到服务器中
步骤一:安装 JAVA程序运行环境(JDK)
安装文档:安装Java运行环境(JDK11)-CSDN博客

 
步骤二:上传Jar包到node2节点中
mkdir -p /opt/zzyl/backend

步骤三:执行Jar包运行
格式:
java -jar 运行的jar包
实操:
cd /opt/zzyl/backend
java -jar zzyl-admin.jar

问题说明: 当前启动后, 会占用前台控制窗口, 导致无法输入其他命令
原因: java -jar 运行jar包, 本身就是直接在前台运行
解决方案:通过 Linux提供的screen 窗口会话的方式, 完成稳定挂载到后台运行
 
①:安装screen命令
安装第三方应用库: dnf install -y epel-release
安装screen命令: dnf install -y screen
② 创建并进入新窗口持久会话
screen -S zzyl-backend
③ 执行运行
java -jar zzyl-admin.jar
④ 运行成功后, 执行 ctrl + a 然后 d 退出
其他screen操作【扩展】
① 查看screen窗口
screen -ls
② 恢复
screen -r
③ 彻底结束

总结:部署java服务必须先安装JDK,部署java项目采用java -jar xxx.jar命令,默认是前台启动,

如果要是使用后台可以采用screen命令。

安装Nginx服务

Nginx(发音为“Engine-X”)是一款高性能的Web服务器和反向代理服务器。它最初是为了提供更
高效的静态文件处理而设计的,但现在广泛应用于负载均衡、反向代理、缓存等多种用途。基于C
语言开发,在合适的硬件上(如多核 CPU 和足够的内存),Nginx 可以处理 50,000 到 100,000
个并发连接,甚至更多。
mkdir -p /opt/zzyl/backend
mkdir -p /opt/zzyl/backend        
Nginx 能做什么?
1. Web 服务器:它可以处理并响应来自用户的 HTTP 请求,展示网站内容。
2. 反向代理服务器:它接收用户的请求,然后将请求转发给其他服务器来处理。这对于负载均衡和
保护后端服务器很有用。
3. 负载均衡:它可以把用户的请求分配到多个后端服务器上,从而减少单一服务器的负担,提高网
站的稳定性和处理能力。
除此之外, 还支持缓存、SSL/TLS加密等能力,是目前最常用的WEB服务器
安装地址:Nginx服务器基本搭建-CSDN博客
总结:Nginx是一款高性能的Web服务器和反向代理服务,可以处理5万到10个并发连接,主要用
于WEB服务器、反向代理服务器、负载均衡等功能。

前端服务部署

项目部署配置 

步骤一:将dist目录上传到/var/www/目录下,如果目标路径不存在, 手动创建

mkdir -p /var/www/
将disk上传到此目录下

步骤二:配置Nginx的配置文件 (资料中已提供完整的配置)
vim /etc/nginx/nginx.conf
# 添加相关内容:
# 在HTTP的目录下, 添加以下三个add_header CORS 配置
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS, PUT, DELETE";
add_header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization";
作用:
这几行配置用于设置 跨域资源共享(CORS),它们在 Nginx 中用来允许其他域名访问你的资源。CORS 是一种机制,允许通过浏览
器发起跨域 HTTP 请求,常用于 Web 应用与不同域名的 API 交互时,解决浏览器的同源策略限制。
步骤二:配置Nginx的配置文件

步骤二:配置Nginx的配置文件 (资料中已提供完整的配置)
在server中, 添加以下三行内容, 删除原有的server_name 和root
client_max_body_size 60m; # 限制客户端请求体的最大大小。
client_body_buffer_size 512k; # 设置 Nginx 用于缓冲客户端请求体的内存大小。
client_header_buffer_size 2k; # 设置 Nginx 用于缓冲请求头的内存大小。
说明
这些配置项与 Nginx 处理客户端请求的请求体大小、请求头缓冲区等相关,主要用于控制 Nginx 在处理上传文件、
请求体内容和请求头时的行为
步骤二:配置Nginx的配置文件 (资料中已提供完整的配置)
步骤二:配置Nginx的配置文件 (资料中已提供完整的配置)
在server中,继续添加以下内容, 注意根据图片 确定放置位置
# 处理 静态页面
location / {
root /var/www/dist;
index index.html index.htm;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
try_files $uri $uri/ /index.html;
}
# 处理反向代理
location /prod-api/ {
proxy_pass http://192.168.88.102:8080/zzyl-admin/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
}
步骤二:配置Nginx的配置文件 (资料中已提供完整的配置)
步骤三:重启Nginx服务 
重启 Nginx:
systemctl restart nginx
或
重新加载 Nginx 配置(不停止服务):
nginx -s reload

步骤四:刷新浏览器: 访问nginx服务器的公网IP
总结:主要使用了Nginx的WEB服务器和反向代理的能力,通过Nginx来接收并响应浏览器请求
(WEB能力),并对部分请求转发到后台服务进行处理(反向代理)。
http://www.xdnf.cn/news/15850.html

相关文章:

  • 【1】计算机视觉方法(更新)
  • selenium4 web自动化测试
  • 面向对象基础笔记
  • QFutureInterface和QFuture间联系与区别
  • 《计算机网络》实验报告五 DNS协议分析与测量
  • 两个数据表的故事第 2 部分:理解“设计”Dk
  • ThinkPHP8极简上手指南:开启高效开发之旅
  • 项目案例:苏宁易购评论获取
  • 民法学学习笔记(个人向) Part.1
  • 【智能协同云图库】第一期:用户管理接口设计与功能实现
  • 【Java学习|黑马笔记|Day18】Stream流|获取、中间方法、终结方法、收集方法及其练习
  • 超大整数任意进制之间在线转换工具
  • 剑指offer67_构建乘积数组
  • 周志华《机器学习导论》第11章 特征选择与稀疏学习
  • PyTorch里的张量及张量的操作
  • [前端技术基础]CSS选择器冲突解决方法-由DeepSeek产生
  • 前端的测试
  • 如何实战优化SEO关键词提升百度排名?
  • 深度学习图像分类数据集—百种病虫害分类
  • 【KDD2025】时间序列|Merlin:不固定缺失率下时间序列预测新SOTA!
  • C++ - 仿 RabbitMQ 实现消息队列--服务端核心模块实现(一)
  • 服务器上的文件复制到本地 Windows 系统
  • python网络爬虫小项目(爬取评论)超级简单
  • git fork的项目远端标准协作流程 仓库设置[设置成upstream]
  • 快速上手git
  • LINUX入门(二)QT的安装及运行环境搭建
  • 【实习总结】Qt中如何使用QSettings操作.ini配置文件
  • Vue中组件的生命周期
  • 08_Opencv_基本图形绘制
  • Docker实战:使用Docker部署envlinks极简个人导航页