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

Linux 发布项目到OpenEuler虚拟机

后端:SpringBoot

前端:VUE3

操作系统:Linux

虚拟机:OpenEuler

 发布项目是需要先关闭虚拟机上的防火墙

systemctl stop firewalld

一、运行后端项目到虚拟机

1、安装JDK软件包

查询Jdk是否已安装

 dnf list installed | grep jdk

(1)查询可安装的JDK软件包。

 dnf search jdk | grep jdk

查看命令打印信息,选择安装java-x.x.x-openjdk-devel.aarch64软件包。其中x.x.x为版本号。

(2)open-jdk下载 https://adoptium.net/zh-CN/

tar解压:

tar -zxvf 压缩文件名.tar.gz
tar -zxvf example.tar.gz -C /path/to/destination/directory/

查询JDK软件版本:

java -version
javac -version

2、打包后端SpringBoot项目并部署到Linux系统中

 3、将打包后的jar包放到虚拟机 /opt 目录下

 4、运行java程序

命令

java -jar your_project_name.jar

 

 二、发布前端项目到虚拟机

1、打包前端项目

首先在前端项目中找到package.json文件,去掉下图画掉的

然后再vite.config.ts文件中更改虚拟机地址代理

使用命令 打包项目 

npm run build 

 打包完成后会生成以下文件

在资源管理器中打开,复制到虚拟机中 

 

复制到虚拟机nginx目录下

 

 配置nginx

配置过后运行命令重新加载配置文件

nginx -s reload

 去本机浏览器使用虚拟机地址访问项目

 三、使用本机数据库连接

修改主机后端项目的mysql连接为通过本机ip连接

在数据库设置root用户允许远程连接

将重新打包的后端jar包重新导入到linux中再次运行便可连接上数据库

四、负载均衡

在配置文件中配置两个后端服务器

 多次点击项目任意请求,观察虚拟机中两个命令窗口的控制台信息,可以看出两个服务端口轮流接收请求

nohup 守护进程:

nohup 是一个在类 Unix 操作系统(如 Linux 和 macOS)中广泛使用的命令,全称是 "no hang up",即“不挂断”。它的主要目的是允许用户在终端断开连接或注销账户后,仍然能够让指定的命令或程序在后台继续运行,不受 SIGHUP(挂起)信号的影响。

nohup java -jar your-project.jar &如果你想要将输出重定向到一个日志文件,可以这样做:
nohup java -jar your-project.jar > output.log 2>&1 &

相关文章:

Linux 发布项目到OpenEuler虚拟机

后端:SpringBoot 前端:VUE3 操作系统:Linux 虚拟机:OpenEuler 发布项目是需要先关闭虚拟机上的防火墙 systemctl stop firewalld 一、运行后端项目到虚拟机 1、安装JDK软件包 查询Jdk是否已安装 dnf list installed | grep jd…...

相机与相机模型(针孔/鱼眼/全景相机)

0. 摘要 本文旨在较为直观地介绍相机成像背后的数学模型,主要的章节组织如下: 第1章用最简单的针孔投影模型为例讲解一个三维点是如何映射到图像中的一个像素 第2章介绍除了针孔投影模型外其他一些经典投影模型,旨在让读者建立不同投影模型…...

ARM32day4

1.思维导图 2.实现三个LED灯亮灭 .text .global _start _start: 使能GPIO外设时钟 LDR R0,0x50000A28 LDR R1,[R0]使能GPIOE ORR R1,R1,#(0X1<<4)使能GPIOF ORR R1,R1,#(0X1<<5) STR R1,[R0]设置引脚状态 LDR R0,0X50006000 LDR R1,[R0] 设置PE10为输出 BIC…...

从零开始写 Docker(六)---实现 mydocker run -v 支持数据卷挂载

本文为从零开始写 Docker 系列第六篇&#xff0c;实现类似 docker -v 的功能&#xff0c;通过挂载数据卷将容器中部分数据持久化到宿主机。 完整代码见&#xff1a;https://github.com/lixd/mydocker 欢迎 Star 推荐阅读以下文章对 docker 基本实现有一个大致认识&#xff1a; …...

网站引用图片但它域名被墙了或者它有防盗链,我们想引用但又不能显示,本文附详细的解决方案非常简单!

最好的办法就是直接读取图片文件&#xff0c;用到php中一个常用的函数file_get_contents(图片地址)&#xff0c;意思是读取远程的一张图片&#xff0c;在输出就完事。非常简单&#xff5e;话不多说&#xff0c;直接上代码 <?php header("Content-type: image/jpeg&quo…...

Java八股文(RabbitMQ)

Java八股文のRabbitMQ RabbitMQ RabbitMQ RabbitMQ 是什么&#xff1f;它解决了哪些问题&#xff1f; RabbitMQ 是一个开源的消息代理中间件&#xff0c;用于在应用程序之间进行可靠的异步消息传递。 它解决了应用程序间解耦、消息传递、负载均衡、故障恢复等问题。 RabbitMQ …...

科研学习|论文解读——一种用于短文本消息中的释义检测的深度网络模型(IPM, 2018)

论文原标题 A deep network model for paraphrase detection in short text messages 摘要 本文研究释义检测,即识别语义相同的句子。检测用自然语言编写的相似句子的能力对一些应用程序至关重要,如文本挖掘、文本摘要、剽窃检测、作者身份认证和问题回答。认识到这一…...

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Web)下篇

onRequestSelected onRequestSelected(callback: () > void) 当Web组件获得焦点时触发该回调。 示例&#xff1a; // xxx.ets import web_webview from ohos.web.webviewEntry Component struct WebComponent {controller: web_webview.WebviewController new web_webv…...

3月19日做题

[NPUCTF2020]验证&#x1f40e; if (first && second && first.length second.length && first!second && md5(firstkeys[0]) md5(secondkeys[0]))用数组绕过first1&second[1] 这里正则规律过滤位(Math.) (?:Math(?:\.\w)?) : 匹配 …...

Java8中Stream流API最佳实践Lambda表达式使用示例

文章目录 一、创建流二、中间操作和收集操作筛选 filter去重distinct截取跳过映射合并多个流是否匹配任一元素&#xff1a;anyMatch是否匹配所有元素&#xff1a;allMatch是否未匹配所有元素&#xff1a;noneMatch获取任一元素findAny获取第一个元素findFirst归约数值流的使用中…...

构建Helm chart和chart使用管道与函数简介

目录 一.创建helm chart&#xff08;以nginx为例&#xff09; 1.通过create去创建模板 2.查看模板下的文件 3.用chart模版安装nginx 二.版本更新和回滚问题 1.使用upgrade -f values.yaml或者命令行--set来设置 2.查看历史版本并回滚 三.helm模板内管道和函数 1.defau…...

深入理解OnCalculate函数的运行机制

文章目录 一、学习 OnCalculate 函数的运行原理的意义二、OnCalculate 函数原型三、OnCalculate 函数在MT4与MT5区别四、OnCalculate 函数的运行原理 一、学习 OnCalculate 函数的运行原理的意义 OnCalculate函数是MQL语言中的一个重要函数&#xff0c;它用于计算技术指标的值。…...

快速从0-1完成聊天室开发——环信ChatroomUIKit功能详解

聊天室是当下泛娱乐社交应用中最经典的玩法&#xff0c;通过调用环信的 IM SDK 接口&#xff0c;可以快速创建聊天室。如果想根据自己业务需求对聊天室应用的 UI界面、弹幕消息、礼物打赏系统等进行自定义设计&#xff0c;最高效的方式则是使用环信的 ChatroomUIKit 。 文档地址…...

nginx实现多个域名和集群

要通过Nginx实现多个域名和集群&#xff0c;你需要配置Nginx作为反向代理服务器&#xff0c;将来自不同域名的请求转发到集群中的相应后端服务器。下面是一个基本的配置示例&#xff0c;你可以根据自己的需求进行修改和扩展。 首先&#xff0c;确保你已经安装了Nginx&#xff…...

C. Left and Right Houses

Problem - C - Codeforces 题目分析 <1>0&#xff1a;想被分割至左边&#xff1b; 1&#xff1a;想被分割至右边 <2>使得左右两侧均有一半及其以上的人满意&#xff08;我*******&#xff09; <3>答案若有多个&#xff0c;取最接近中间位置的答案 <4…...

缓存与内存:加速你的Python应用

在现代计算中&#xff0c;缓存和内存是提高程序性能的关键组件。在这篇文章中&#xff0c;我们将深入探讨这两个概念&#xff0c;了解它们是如何工作的&#xff0c;以及如何在Python中有效地使用它们来优化你的程序。 缓存与内存&#xff1a;加速你的Python应用 缓存和内存&…...

Go语言之函数、方法、接口

一、函数 函数的基本语法&#xff1a; func 函数名&#xff08;形参列表&#xff09;&#xff08;返回值列表&#xff09; {执行语句...return 返回值列表 } 1.形参列表&#xff1a;表示函数的输入 2.函数中的语句&#xff1a;表示为了实现某一功能的代码块 3.函数可以有返回…...

【Week Y2】使用自己的数据集训练YOLO-v5s

Y2-使用自己的数据集训练YOLO-v5s 零、遇到的问题汇总&#xff08;1&#xff09;遇到git的import error&#xff08;2&#xff09;Error&#xff1a;Dataset not found&#xff08;3&#xff09;Error&#xff1a;删除中文后&#xff0c;训练图片路径不存在 一、.xml文件里保存…...

蓝桥杯--基础(哈夫曼)

import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner;public class BASIC28 {//哈夫曼书public static void main(String[] args) {Scanner Scannernew Scanner(System.in);int nScanner.nextInt();List<Integer&…...

【Redis内存数据库】NoSQL的特点和应用场景

前言 Redis作为当今最流行的内存数据库&#xff0c;已经成为服务端加速的必备工具之一。 NoSQL数据库采用了非关系型的数据存储模型&#xff0c;能够更好地处理海量数据和高并发访问。 内存数据库具有更快的读写速度和响应时间&#xff0c;因为内存访问速度比磁盘访问速度快…...

RPA文件深度解析与高效提取指南:从原理到实战的完整解决方案

RPA文件深度解析与高效提取指南&#xff1a;从原理到实战的完整解决方案 【免费下载链接】unrpa A program to extract files from the RPA archive format. 项目地址: https://gitcode.com/gh_mirrors/un/unrpa 问题定位&#xff1a;RPA文件的技术挑战与解决方案 识别…...

OpenClaw技能扩展指南:安装Qwen3-4B驱动的内容处理模块

OpenClaw技能扩展指南&#xff1a;安装Qwen3-4B驱动的内容处理模块 1. 为什么需要技能扩展&#xff1f; 上周我整理项目文档时&#xff0c;面对十几个Markdown文件的手动合并操作&#xff0c;突然意识到&#xff1a;OpenClaw的默认能力可能无法满足深度内容处理需求。这正是技…...

Odoo 19 AI功能实战:不用写代码,用自然语言就能自动化你的业务流程

Odoo 19 AI功能实战&#xff1a;不用写代码&#xff0c;用自然语言就能自动化你的业务流程 想象一下&#xff0c;早晨打开电脑&#xff0c;你只需要对系统说"把昨天所有未处理的客户咨询按优先级排序&#xff0c;并生成回复草稿"&#xff0c;30秒后就能收到整理好的列…...

实战应用:基于快马构建高保真抖音模块,为技术方案选型与竞品分析提供实例

最近在研究抖音最新版本的技术实现方案&#xff0c;发现用InsCode(快马)平台可以快速搭建一个高保真的功能模拟应用。这个实战项目不仅能帮助理解抖音的核心模块设计&#xff0c;还能为技术选型提供直观参考。下面分享下我的实现思路和关键要点&#xff1a; 智能推荐流实现 通过…...

STM32定时器编码器模式实战:5分钟搞定电机转速与转向测量(附常见波形问题排查)

STM32定时器编码器模式实战&#xff1a;5分钟搞定电机转速与转向测量&#xff08;附常见波形问题排查&#xff09; 在机器人控制和自动化项目中&#xff0c;电机转速和转向的精确测量往往是系统闭环控制的基础。传统软件计数方式不仅占用CPU资源&#xff0c;还容易因中断延迟导…...

ml.js数据预处理完全教程:从数组操作到特征工程

ml.js数据预处理完全教程&#xff1a;从数组操作到特征工程 【免费下载链接】ml Machine learning tools in JavaScript 项目地址: https://gitcode.com/gh_mirrors/ml/ml 在机器学习项目中&#xff0c;数据预处理是决定模型性能的关键步骤。ml.js作为一个强大的JavaScr…...

Kandinsky-5.0-I2V-Lite-5s社区作品精选:看看其他开发者创造了什么

Kandinsky-5.0-I2V-Lite-5s社区作品精选&#xff1a;看看其他开发者创造了什么 1. 开篇&#xff1a;一场视觉创意的盛宴 Kandinsky-5.0-I2V-Lite-5s作为当前最热门的开源图像转视频模型&#xff0c;正在全球开发者社区掀起创作热潮。短短5秒就能将静态图片转化为富有生命力的…...

不止于找Flag:从BUUCTF流量分析题,我总结出这3个Wireshark高效排查思路

从CTF到实战&#xff1a;Wireshark流量分析的三大高阶排查策略 在网络安全领域&#xff0c;流量分析就像数字世界的法医鉴定。当我在一次企业内网渗透测试中&#xff0c;面对超过50GB的混杂流量数据时&#xff0c;那些曾经在BUUCTF等CTF比赛中磨练出的Wireshark技巧突然变得无比…...

OpenClaw版本升级:无缝迁移Kimi-VL-A3B-Thinking对接配置

OpenClaw版本升级&#xff1a;无缝迁移Kimi-VL-A3B-Thinking对接配置 1. 升级前的准备工作 上周我在升级OpenClaw时遇到了一个棘手的问题——新版本与现有的Kimi-VL-A3B-Thinking模型对接出现了兼容性问题。这让我意识到&#xff0c;对于依赖特定模型服务的自动化工作流来说&…...

Windows系统优化终极指南:Win11Debloat让电脑焕然一新

Windows系统优化终极指南&#xff1a;Win11Debloat让电脑焕然一新 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and cu…...