【服务器项目部署】⭐️将本地项目部署到服务器!

目录

🍸前言

🍻一、服务器选择

🍹 二、服务器环境部署

        2.1 java 环境部署

        2.2 mysql 环境部署

🍸三、项目部署

        3.1 静态页面调整

        3.2 服务器端口开放

        3.3 项目部署

​ 🍹四、测试


🍸前言

        小伙伴们大家好,前段时间一直在学习搭建一个简单的 ai 服务,从本地实现答案流式输出、到后面的内网穿透可以通过公网访问,文章链接如下:

【AI】✈️实现一个简单的问答服务-CSDN博客

【AI】⭐️搭建一个简单的个人问答网页_智能问答前端页面-CSDN博客

【AI】✈️问答页面搭建-内网穿透公网可访问!-CSDN博客

         这里使用的内网穿透工具虽然是免费的,但是有个缺点就是,映射后的域名每过24小时左右会自动更新,这就要求静态页面的代码中也要跟着更新,请求最新的端口映射地址,整体感觉不如换个长期不变的映射了,要不直接搞一台在线服务器,把项目搬过去?(也不用怕面试官叼你了,直接链接刷给他)

🍻一、服务器选择

        现在市面上的服务器供应商有很多,可以自行按照需求选择,本人是从一些开发交流群中借鉴了下,最终选择的是腾讯云,链接如下:

年终盛典 拼团嗨购_腾讯云优惠活动

        主要是用来个人使用,所以对服务器的配置没什么要求,只要能正常运行项目即可,服务器选购时要先选择系统,大家熟悉什么系统就用什么,本人接触 windows 比较多,搭建环境也比较上手一点,linux 主要是在虚拟机上用过,但是由于本地机器是 windows 的,为了后面方便上传文件到服务器,就选择了 windows 2012的镜像,付款成功后登陆控台的“服务器”导航栏中,可以重置下密码:

🍹 二、服务器环境部署

        登陆的方式有很多种,本地选择的远程连接,官方操作文档上教程很详细:

轻量应用服务器 使用远程桌面连接登录 Windows 实例-操作指南-文档中心-腾讯云

         登陆之后,需要将本地的安装文件上传到服务器上,包括 jdk,mysql的环境部署,具体的文件上传官方教程如下,操作完成之后就可以将本地文件直接拷贝到服务器对应的文件夹内即可,本地是拷贝了 jdk ,mysql 和 mysql 的可视化工具:

轻量应用服务器 Windows 系统通过远程桌面上传文件到 Windows 轻量应用服务器-操作指南-文档中心-腾讯云

 

        2.1 java 环境部署

        jdk安装的时候,除了想要自定义安装路径之外,别的可以一路 next ,完成之后到系统环境变量中加上安装路径即可。如下,找到高级系统设置之后就熟悉了,找到 jdk 安装的目录,将bin文件夹所在路径添加到 Path 中即可,使用 java -version 查看下版本,没问题:

        2.2 mysql 环境部署

         熟悉 mysql 安装的小伙伴可以参考下这篇文章,主要是针对 “提示需要Visual Studio 才能运行文件” 的问题解决

Mysql 安装通过mysql installer安装+配置环境+连接可视化工具-CSDN博客

        安装完成之后,可以登陆试下,可视化工具安装连接就一概而过了:

🍸三、项目部署

        本地是将之前的用 springboot 框架搭建的简单 ai 问答项目部署在服务器上,在部署之前,有以下操作必须完成

        3.1 静态页面调整

                静态页面调用的接口地址要调整,改为服务器的公网 Ip 地址,这样项目启动后才有可能公网访问到,具体如下,端口号就是项目启动使用的端口号,一般使用 spring.port 配置: 

        3.2 服务器端口开放

        调整过项目之后,需要在服务器的管理页面,开放项目占用的端口号,不然公网也是一样访问不到的, 如下,暂时只限制了手机的 Ip 访问,等后面项目稍微完善之后,可以放开,不做 ip 限制

 

        3.3 项目部署

        右侧工具栏 maven 快速打包成 jar 包, 将 jar 包上传到服务器,进入命令页面之后使用,java -jar 打包的jar文件名字即可启动项目,如下 观察下项目是否成功启动,然后就可以测试项目是否成功部署到服务器了:

 🍹四、测试

        浏览器输入 http://xx.xx.xx.xx:8888/,就是公网地址,加上端口号,因为访问该端口号之后,可以访问到本地的静态页面,一般对应的index.html 文件,本地使用手机测试,因为只限制了手机 ip 可以访问,效果如下,也可以去服务器上看下数据库是否有数据,

         简单的熟悉了下服务器上的项目部署,后续可以在此基础上再进行更新

        文章到这里就结束了~

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

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

相关文章

chrome缓存机制以及验证缓存机制

一、Chrome 缓存机制 浏览器缓存机制旨在提高网页加载速度、减少服务器负载和节约带宽。Chrome 的缓存主要包括以下几种类型: 1. 强缓存 (Strong Cache) 无需向服务器发送请求即可使用缓存的资源。由 HTTP 响应头控制,包括: Expires&…

西门子DBX DBD DBB DBW的关系

DB10.DBD0 DB10.DBW0DB10.DBW2 DB10.DBB0DB10.DBB1DB10.DBB2DB10.DBB3 DB10.DBX0.00.7DB10.DBX1.01.7DB10.DBX2.02.7DB10.DBX3.03.7 使用之前需要在DB10中先定义,如果你仅在DB10中定义了一个DBD0,那么原则上你是可以使用上述所有地址的,但…

Android `android.graphics` 包深度解析:架构与设计模式

Android android.graphics 包深度解析:架构与设计模式 目录 引言android.graphics 包概述核心类与架构 CanvasPaintBitmapColorPathShaderMatrix设计模式在 android.graphics 中的应用 工厂模式装饰者模式策略模式享元模式高级图形处理技术 硬件加速离屏渲染自定义 View 中的…

Nginx的性能分析与调优简介

Nginx的性能分析与调优简介 一、Nginx的用途二、Nginx负载均衡策略介绍与调优三、其他调优方式简介四、Nginx的性能监控 一、Nginx的用途 ‌Nginx是一种高性能的HTTP和反向代理服务器,最初作为HTTP服务器开发,主要用于服务静态内容如HTML文件、图像、视…

vue2使用pdfjs-dist和jsPDF生成pdf文件

vue2使用pdfjs-dist和jsPDF生成pdf文件 1、安装依赖 npm install pdfjs-dist2.6.3472、引入依赖 import { jsPDF } from jspdf// 使用require方式导入pdfjs-dist v2.6.347,高版本报错(import导入会报错:GlobalWorkerOptions undefined&…

sklearn_pandas.DataFrameMapper的用法

文章目录 介绍主要作用基本用法示例对不同列应用不同的转换器对多列应用相同的转换器输出为 Pandas DataFrame 注意事项转换器的适用性:输出格式:与 scikit-learn 的兼容性: 介绍 DataFrameMapper 是 sklearn-pandas 库中的一个工具&#xf…

HTML——31.定义媒介资源

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>定义媒介资源</title></head><body><!--source标签用来为<video>视频和<audio>音频 &#xff0c;定义媒介资源--><!--src属性&…

宝塔-firefox(Docker应用)-构建自己的Web浏览器

安装基础软件 宝塔中安装firefox(Docker应用) 。宝塔中需要先安装docker及docker-composefirefox配置安装 点击firefox应用&#xff0c;选择【安装配置】点击右边绿色按钮&#xff0c;进行安装&#xff0c;这一步等待docker-compose根据你的配置初始化docker应用 等待安装 …

ArcGIS土地利用数据制备、分析及基于FLUS模型土地利用预测(数据采集、处理、分析、制图)

FLUS&#xff08;Flexible Land Use Simulation&#xff09;模型是一个用于模拟土地利用变化的模型&#xff0c;它结合了经济理论、土地利用和土地覆盖变化的动态过程。FLUS模型由美国农业部农业经济研究服务局&#xff08;ERS&#xff09;开发&#xff0c;旨在提供对美国及全球…

【文献精读笔记】Explainability for Large Language Models: A Survey (大语言模型的可解释性综述)(一)

****非斜体正文为原文献内容&#xff08;也包含笔者的补充&#xff09;&#xff0c;灰色块中是对文章细节的进一步详细解释&#xff01; 三、传统微调范式&#xff08;Traditional Fine-Tuning Paradigm&#xff09; 在这个范式中&#xff0c;首先在大量未标记的文本数据上预…

【泰克生物】从酵母细胞表面展示到抗体筛选:实现精准药物发现

在现代药物发现领域&#xff0c;精准筛选和优化抗体已成为一种必不可少的技术手段。传统的抗体筛选方法依赖于动物免疫或体外筛选&#xff0c;这些方法往往成本高且周期长。近年来&#xff0c;酵母细胞表面展示技术&#xff08;Yeast Surface Display, YSD&#xff09;成为一种…

C++ 设计模式:门面模式(Facade Pattern)

链接&#xff1a;C 设计模式 链接&#xff1a;C 设计模式 - 代理模式 链接&#xff1a;C 设计模式 - 中介者 链接&#xff1a;C 设计模式 - 适配器 门面模式&#xff08;Facade Pattern&#xff09;是一种结构型设计模式&#xff0c;它为子系统中的一组接口提供一个一致&#…

基于YOLOV5+Flask安全帽RTSP视频流实时目标检测

1、背景 在现代工业和建筑行业中&#xff0c;安全始终是首要考虑的因素之一。特别是在施工现场&#xff0c;工人佩戴安全帽是确保人身安全的基本要求。然而&#xff0c;人工监督难免会有疏漏&#xff0c;尤其是在大型工地或复杂环境中&#xff0c;确保每个人都佩戴安全帽变得非…

【每日学点鸿蒙知识】深色模式、Webview查看版本、window设置亮度、List缓存节点更新、预编译JS

1、HarmonyOS 深色模式下canvas绘制通过resourcemanager.getColor不是实际dark模式下的颜色&#xff1f; 深色模式下canvas绘制通过resourcemanager.getColor不是实际dark模式下的颜色 正确获取到资源resourcemanager. getColorSync($r(‘app.color.test_color’).id);深色模…

Day08:字符串

1. 什么是字符串 字符串&#xff08;String&#xff09; 是由一系列字符组成的文本数据。在Python中&#xff0c;字符串用引号括起来&#xff0c;既可以是单引号&#xff0c;也可以是双引号"。 字符串可以包含字母、数字、空格、符号等内容。 示例&#xff1a;定义字符串…

Unity开发微信小游戏踩坑总结

前言 不记录真记不住&#xff0c;这个帖子以后不定时更新。 问题1&#xff1a;图片模糊 问题描述&#xff1a; 在Unity里什么事没有&#xff0c;进入到微信开发者工具里就已经模糊了&#xff0c;人物动画是一团马赛克&#xff0c;图片看着倒是没事。 问题原因&#xff1a;…

Vue异步处理、异步请求

Vue.js 是一个用于构建用户界面的渐进式JavaScript框架&#xff0c;它允许开发者以声明式的方式编写异步操作。在 Vue 中处理异步任务非常重要&#xff0c;因为很多现代Web应用都需要与后端API交互、执行耗时计算或管理复杂的异步流程。以下是对 Vue 中异步处理的详细讲解&…

【AI日记】24.12.30 kaggle 比赛 2-18

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 参加&#xff1a;kaggle 比赛 Regression with an Insurance Dataset时间&#xff1a;8 小时 读书 1 书名&#xff1a;教育的本质时间&#xff1a;0.5 小时评估&#xff1a;快速读完&#xff0c;收获不…

torchvision.utils.make_grid 解释下

torchvision.utils.make_grid 是 PyTorch 中 torchvision 库提供的一个实用函数,用于将多个图像拼接成一个网格,方便进行可视化。 主要功能 make_grid 将一批图片组织成一个网格形式,输出一个单一的张量,便于使用可视化工具(如 Matplotlib)查看图像。 参数解释 torchvi…

VUE echarts 教程二 折线堆叠图

VUE echarts 教程一 折线图 import * as echarts from echarts;var chartDom document.getElementById(main); var myChart echarts.init(chartDom); var option {title: {text: Stacked Line},tooltip: {trigger: axis},legend: {data: [Email, Union Ads, Video Ads, Dir…