记录linux从0部署java项目(宝塔)

news/2024/11/29 2:46:45/

目录

一、安装宝塔可视化界面

 二、部署前端

三、部署后端

1、配置并连接Mysql数据库

2、配置并连接redis

3、安装jdk

这里先记录一个安装后遇到的问题

安装openJDK

四、检查


一、安装宝塔可视化界面

宝塔面板下载,免费全能的服务器运维软件

运行安装脚本

安装完成后

访问内网面板地址,填写用户名密码。

在软件商店中安装nginx、mysql、redis

开放3306和6379端口(为了本地测试连接)如果是阿里云服务器记得去安全组开放端口

 二、部署前端

运行npm run build:prod

得到打包后的前端文件dist

通过宝塔上传(目录自定)
我这里是/www/wwwroot/saas_inspection/front-admin

添加站点

 

完成后可以直接访问  域名或ip+:端口看看我们部署的项目

我们会发现有刷新404的问题

我部署的前端项目有个转发路径prod-api需要再去nginx里配置代理

添加完站点后会自动生成一nginx的配置文件存放位置根据nginx主配置文件找

图中可以看出文件位置在/www/server/panel/vhost/nginx/*.conf

切过去看看

cd /www/server/panel/vhost/nginx/

ls

 vim xxx.conf

 在server里添加,我的后端项目端口为8080

  #配置代理 

   location /prod-api/ {
        proxy_pass http://服务器路径:8080/;
    }
    #防止返回404
    location / {
         root   /www/wwwroot/saas_inspection/front-admin/dist;
         try_files $uri $uri/  /index.html;
         index  index.html index.htm;
    }

结束后重启nginx

nginx -s reload

前端over! 

三、部署后端

1、配置并连接Mysql数据库

获取到mysql,root密码

在终端登录mysql输入

 use mysql
 select host from user where user='root';

查询到如果是localhost或者127.0.01则改为%(这里不改本地可视化工具连接不上root)

修改指令:

update user set host = '%' where user = 'root';

flush privileges;   //刷新配置

navicat  mysql连接成功。

2、配置并连接redis

找到配置文件

ctrl + f 查找

bind 127.0.0.1把它注释了

protected-mode 本来是yes改成no


redis刚安装好是没有密码的如果要设置密码的话在配置文件中加上

requirepass 123(表示密码是123)

本地连接测试一下,redis搞定。

3、安装jdk

我的项目安装的是jdk19。

这里先记录一个安装后遇到的问题

本来我是下载了官方的jdk19(rpm)

安装完成后运行我的java程序没有报错,但在登录时发送了错误:

cn.hutool.crypto.CryptoException: SecurityException: JCE cannot authenticate the provider BC

是由于我的项目中在使用加密的第三方类时,验证签名不过关导致的。

具体可看博客:升级jdk版本后,出现SecurityException: JCE cannot authenticate the provider BC-CSDN博客

解决的办法就是安装openJdk

安装openJDK

先检查服务器中是否已经存在jdk环境

rpm -qa|grep jdk

 如果有则卸载

yum -y remove java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64

 检查是否卸载成功

 [root@localhost /]# java -version
-bash: java: 未找到命令

下载openJDK到本地 

 清华大学开源镜像站:https://url.zeruns.tech/Tuna_JDKIndex of /Adoptium/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://url.zeruns.tech/Tuna_JDK

通过宝塔上传到服务器上 

cd 到上传的目录然后解压

tar -zxvf OpenJDK19U-jdk_x64_linux_hotspot_19.0.2_7.tar.gz 

 解压好后ls得到jdk目录jdk-19.0.2+7

配置环境

vim /etc/profile

 注意路径填写正确我这里拿/opt举例

export JAVA_HOME=/opt/jdk-19.0.2+7 
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

完成后

source /etc/profile 

java -version

 

jdk安装成功!

 4、后端项目打包

配置yml文件

端口8080

mysql配置

redis配置

 

打包

得到jar包

上传到服务器上。

cd 到对应目录。

//正常启动,关闭终端则会退出程序

java -jar xxx.jar

//后台启动关闭终端也不会退出

nohup java -jar xxx.jar &

四、检查

访问前端地址,查看是否和后端对接成功。


http://www.ppmy.cn/news/1418520.html

相关文章

Ubuntu 22上安装Anaconda3。下载、安装、验证详细教程

在Ubuntu 22上安装Anaconda3,你可以遵循以下步骤: 更新系统存储库: 打开终端并运行以下命令来更新系统存储库: sudo apt update安装curl包: 下载Anaconda安装脚本通常需要使用curl工具。如果系统中没有安装curl&#x…

深度学习图像处理基础工具——opencv 实战2 文档扫描OCR

输入一个文档,怎么进行文档扫描,输出扫描后的图片呢? 今天学习了 opencv实战项目 文档扫描OCR 问题重构:输入图像 是一个含有文档的图像——> 目标是将其转化为 规则的扫描图片 那么怎么实现呢? 问题分解&#…

如何安全地设置MySQL数据库的IP白名单

设置MySQL数据库的IP白名单是一种关键的安全措施,可以确保只有来自特定IP地址的请求被允许访问数据库服务器。这里是如何安全地配置这些设置的分步指南。 步骤1: 登录到MySQL服务器 首先,使用管理员权限登录到你的MySQL服务器。如果你使用的是命令行&a…

ubuntu maven 使用示例

ubuntu maven 使用示例 一、基本使用 1、安装 sudo apt update sudo apt install maven mvn -v2、创建项目 mvn archetype:generate -DgroupIdcom.example -DartifactIdmy-project -DarchetypeArtifactIdmaven-archetype-quickstart -DinteractiveModefalse # -DartifactId…

热词解析| 制造企业如何跟上新质生产力建设步伐【触想智能】

回顾3月份的网络热词,「新质生产力」在各大平台霸榜刷屏,并且受到两会政府工作报告的频繁聚焦。究竟何为新质生产力?以及,传统制造企业如何加速融入这场火热的现代化产业革新浪潮之中? 图源| 纪录片《加快形成新质生产力》 1、什么是新质生…

php 获取行政区域

记录&#xff1a;php获取四级行政区域&#xff0c;拉取高德接口数据 API接口文档&#xff1a; https://lbs.amap.com/api/webservice/guide/api/district 获取API <?php /*** 服务器接口类*/ namespace queryAreaInfo;class queryArea{//发送private function sendData($…

Java 面试宝典:你知道多少种解决 hash 冲突的方法?

大家好&#xff0c;我是大明哥&#xff0c;一个专注「死磕 Java」系列创作的硬核程序员。 本文已收录到我的技术网站&#xff1a;https://www.skjava.com。有全网最优质的系列文章、Java 全栈技术文档以及大厂完整面经 回答 在使用 hash 表时&#xff0c; hash 冲突是一个非常…

SSM整合----第一个SSM项目

文章目录 前言一、使用步骤1.引入库2.建表3 项目结构4 web.xml的配置5 配置数据源6 SpringMVC配置7 配置MyBatis Mapper8 书写控制类 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; SSM整合是指Spring、SpringMVC和MyBatis这三个框架的整合使用。…