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

零基础入门 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.dtcms.com/a/289735.html

相关文章:

  • 论文解读:Rethinking vision transformer through human–object interaction detection
  • 西门子 S7-1500 系列 PLC CPU 选型全指南:从类型到实战
  • 搭建大模型
  • 新人加入团队后如何快速理解看板?
  • 地图经纬度与地图切片像素坐标换算类
  • 2.组合式API知识点(1)
  • imx6ull-系统移植篇11——U-Boot 移植(下)
  • 不只是“能用”:从语义化到 ARIA,打造“信息无障碍”Web 应用的实战清单
  • Python关于numpy的基础知识数组的升维
  • leetcode丑数II计算第n个丑数
  • 操作系统总结
  • dify创建OCR工作流
  • springboot-profile
  • [学习] 双边带调制 (DSB) 与单边带调制 (SSB) 深度对比
  • 【Java学习|黑马笔记|Day18】Stream流|获取、中间方法、终结方法、收集方法及其练习
  • Redis面试精讲 Day 4:Redis事务与原子性保证
  • Node.js:常用工具、GET/POST请求的写法、工具模块
  • 基于单片机无线防丢/儿童防丢报警器
  • xavier nx上编译fast-livo过程中出现的问题记录
  • 分享一款免费好用的电视远程推送传输助手TV版软件
  • week4
  • 游戏剧情抄袭侵权比对报告:防止“爆款”变“爆雷”
  • 【分布式 ID】详解百度 uid-generator(源码篇)
  • 【每日算法】专题十_哈希表
  • 代码随想录-250720-划分字母区间
  • 什么是 Linux 发行版?什么是 Linxu 操作系统?
  • python字符串的讲解和应用
  • kotlin Flow快速学习2025
  • Function Callingの进化路:源起篇
  • (5)从零开发 Chrome 插件:Vue3 Chrome 插件待办事项应用