Linux部署web项目springboot项目(详细步骤)
作者:mmseoamin日期:2023-12-25

前言:

小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注一下!

也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!让我们在成长的道路上互相学习,让我们共同进步,欢迎关注!

目录

一、安装jdk

1:问题

1.1Openjdk和jdk有什么区别?

 1.2Oracle JDK 和 OpenJDK 的区别是什么?

 2:下载jdk

2.1 官网下载http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

 2.2Linux中使用wget命令在线下载

 3:更改jdk环境配置

3.1使用sudo vim ~/.bashrc命令使用编辑器打开文件

 3.2 更新jdk环境变量

 3.3验证jdk1.8是否安装成功

 二、安装Mysql

1.下载安装mysql

 2.安装完成之后,设置密码

 3.确认密码

4.可通过linux命令:netstat  -an |grep 3306 查看端口号的情况

5.mysql –u root –p 进入mysql数据库

 6.需要开通远程 3306端口

6.1查看端口情况

6.2修改Mysql配置文件

6.3 重启Mysql

 6.4再次查看端口信息

​编辑6.5Mysql允许所有的ip都可以访问

 6.5远程测试

 6.6新用户myuser1 只能拥有查询权限?

6.7Linux连接数据库报错“Public Key Retrieval is not allowed”应该如何解决?

三、安装Tomcat

1.官网下载

 2.在线下载tomcat

3.tomcat配置环境startup.sh

 4.启动服务

 5.测试tomcat启动是否成功

6.查看动态日志

 7.关闭tomcat服务

 四、安装redis

1.官网下载地址

 2.解压redis.tar.gz

3.编译make

在redis-6.0.5目录下再次执行make命令(只是编译好)

 4.安装

5.启动redis

6.更改配置

五.运行项目

1.运行ssm项目

 2.运行springboot项目

1.将项目打包成jar包或者war包

 2.运行jar包​编辑

 3.访问项目


一、安装jdk

首先我们可以在linux中通过命令:java -version命令查看Linux中有哪些原生的openjdk

1:问题

由于Linux系统中有原生的Openjdk,所以在Linux系统中安装jdk的时候,都需要检查并卸载原生的Openjdk,因此

1.1Openjdk和jdk有什么区别?

 说简洁点,Open JDK是 JDK的原始开放代码,JDK7就是在 Open JDK7的基础上发布的。可以简单的认为,Open JDK 是基础版,而 JDK是发行版。

但是我们不使用openjdk,由于:

1:Open jdk不包含部署功能

2:Openjdk 源代码不完整

 1.2Oracle JDK 和 OpenJDK 的区别是什么?

  1.  Oracle JDK版本将每三年发布一次,而OpenJDK版本每三个月发布一次;
  2. OpenJDK 是一个参考模型并且是完全开源的,而Oracle JDK是OpenJDK的一个实现,并不是完全开源的;
  3. Oracle JDK 比 OpenJDK 更稳定。OpenJDK和Oracle JDK的代码几乎相同,但Oracle JDK有更多的类和一些错误修复。因此,如果您想开发企业/商业软件,我建议您选择Oracle JDK,因为它经过了彻底的测试和稳定。某些情况下,有些人提到在使用OpenJDK 可能会遇到了许多应用程序崩溃的问题,但是,只需切换到Oracle JDK就可以解决问题;
  4. 在响应性和JVM性能方面,Oracle JDK与OpenJDK相比提供了更好的性能;
  5. Oracle JDK不会为即将发布的版本提供长期支持,用户每次都必须通过更新到最新版本获得支持来获取最新版本;
  6. Oracle JDK根据二进制代码许可协议获得许可,而OpenJDK根据GPL v2许可获得许可。 

 2:下载jdk

本文演示的是下载jdk1.8版本

2.1 官网下载http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Linux部署web项目springboot项目(详细步骤),第1张

 2.2Linux中使用wget命令在线下载

wget    https://www.oracle.com/webapps/redirect/signon?nexturl=https://download.oracle.com/otn/java/jdk/8u371-b11/ce59cff5c23f4e2eaf4e778a117d4c5b/jdk-8u371-linux-x64.tar.gz

下载存放地址

若没有指明下载存放地址的,Linux默认会存放一个地址,可通过Linux命令查看下载地址

第一种:

  1. 查找java命令位置:which   java  --------------------------->输出:/usr/bin/java
  2. 查软链(列出该链接所指向的原始文件或目录):ls  -l  /usr/bin/java ---------------------->输出:/etc/alternatives/java
  3. 查jdk目录:ls  -l   /etc/alternatives/java 

第二种:

使用直接使用find命令查找

 将下载的jdk-8u161-linux-x64.tar.gz拖进新创建的/usr/lib/java里面

然后再解压到usr/local/目录下

 tar     -xvf    /usr/local/java/jdk-8u291-linux-x64.tar.gz     -C     /usr/local/

Linux部署web项目springboot项目(详细步骤),第2张

 3:更改jdk环境配置

注意:我们更改环境配置主要是对"/etc/.profile"和"/root/.bashrc"两个更改

区别:bashrc与profile都用于保存用户的环境信息,但:

/etc/.profile:是系统全局针对终端环境的设置,修改了它,会影响所有用户的终端环境,这里一般配置终端如何与用户进行交互的增强功能等(比如sudo提示、命令找不到提示安装什么包等),新开的终端,已经load了这个配置,最后才load用户自己的 ~/.bashrc.

/root/.bashrc:是用户相关的终端(shell)的环境设置,通常打开一个新终端时,默认会load里面的设置,在这里的设置不影响其它人。如果一个服务器多个开发者使用,大家都需要有自己的sdk安装和设置,那么最好就是设置它(只对当前用户新打开的bash生效)。

3.1使用sudo vim ~/.bashrc命令使用编辑器打开文件

在文件最后面加上下面几行

#set oracle jdk environment

export JAVA_HOME=/usr/local/jdk1.8.0_291  ## 这里要注意目录要换成自己解压的jdk 目录

export JRE_HOME=${JAVA_HOME}/jre  

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  

export PATH=${JAVA_HOME}/bin:$PATH  

Linux部署web项目springboot项目(详细步骤),第3张

 3.2 更新jdk环境变量

我修改了/root/bashrc文件,我想让它立刻生效,而不用重新登录;这时就想到用source命令

source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。

source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。

source   ~/.bashrc    更新环境变量

 3.3验证jdk1.8是否安装成功

 java -version

 Linux部署web项目springboot项目(详细步骤),第4张

 二、安装Mysql

1.下载安装mysql

在Ubuntu的命令行中输入MySQL安装命令,默认是安装5.7版本的

sudo  apt-get   install   mysql-server

 2.安装完成之后,设置密码

Linux部署web项目springboot项目(详细步骤),第5张

 3.确认密码

Linux部署web项目springboot项目(详细步骤),第6张

4.可通过linux命令:netstat  -an |grep 3306 查看端口号的情况

5.mysql –u root –p 进入mysql数据库

就可以操作正常mysql的增删改查操作了, 

Linux部署web项目springboot项目(详细步骤),第7张 Linux部署web项目springboot项目(详细步骤),第8张

 如果想退出MySQL数据库,直接输入“exit”或者“quit”即可,如下图所示

Linux部署web项目springboot项目(详细步骤),第9张

 6.需要开通远程 3306端口

6.1查看端口情况

netstat -an | grep 3306

Linux部署web项目springboot项目(详细步骤),第10张 注意:现在的3306端口绑定的IP地址是本地的127.0.0.1

6.2修改Mysql配置文件

 vim     /etc/mysql/mysql.conf.d/mysqld.cnf

具体操作:注释    #bind-address            = 127.0.0.1

6.3 重启Mysql

1:/etc/init.d/mysql restart

2:service  mysql   restart 

 6.4再次查看端口信息

netstat -an | grep 3306

Linux部署web项目springboot项目(详细步骤),第11张6.5Mysql允许所有的ip都可以访问

在Linux下mysql如何开启远程连接?

Linux部署web项目springboot项目(详细步骤),第12张

 Mysql8.x 以前版本

   第一步:mysql -uroot -p

   第二步:use mysql

        update user set host=’%’ where user=’root’

      或

       grant all privileges on *.* to root@'%' with grant option;

第三步:flush privileges;

 6.5远程测试

通过windows客户端连接,出现如图所示表示远程可以连接了

Linux部署web项目springboot项目(详细步骤),第13张

 6.6新用户myuser1 只能拥有查询权限?

新增用户myuser1密码为123456: create user 'myuser1'@'%' identified by '123456';

赋予查询权限:  grant select on  mysql.user to 'myuser1'@'%';

刷新权限:    flush privileges;

6.7Linux连接数据库报错“Public Key Retrieval is not allowed”应该如何解决?

方式一:

连接数据库的url中,加上allowPublicKeyRetrieval=true参数

方式二:

修改default_authentication_plugin设置,在my.ini中增加[mysqld]default_authentication_plugin=mysql_native_password,然后mysql命令行执行ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';最后在url中添加时区参数serverTimezone=Asia/Shanghai。

注意:在ubuntu中只要开启服务-----远程端口号会自动打开,但在cent os操作系统中端口号需额外开启

CentOS 6内置的防火墙为iptables,Cent OS7,内置的防火墙则是firewalld

firewall-cmd --zone=public --add-port=8080/tcp –permanent

–permanent参数表示永久生效,没有此参数重启后失效

#重启firewall

firewall-cmd –reload

三、安装Tomcat

注:安装Tomcat需要有java环境,需要先安装jdk,所以我们前面第一步就要把jdk安装好,并把环境配好

1.官网下载

https://tomcat.apache.org/download-90.cgi

Linux部署web项目springboot项目(详细步骤),第14张

 2.在线下载tomcat

wget   https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.74/bin/apache-tomcat-9.0.74.tar.gz

在线下载tomcat和 在线下载jdk步骤相同

解压放在/usr/local下

 tar    -xvf    /usr/local/java/apache-tomcat-9.0.74.tar.gz   -C    /usr/local 

3.tomcat配置环境startup.sh

cd    /usr/local/apache-tomcat-9.0.48/bin

打开 startup.sh配置在末尾添加:

#set java environment

export JAVA_HOME=/usr/local/jdk1.8.0_291

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:%{JAVA_HOME}/lib:%{JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

#tomcat

export TOMCAT=/usr/local/apache-tomcat-9.0.48

exec "$PRGDIR"/"$EXECUTABLE" start "$@"

 Linux部署web项目springboot项目(详细步骤),第15张

 4.启动服务

Linux部署web项目springboot项目(详细步骤),第16张

 5.测试tomcat启动是否成功

wget   http://localhost:8080

Linux部署web项目springboot项目(详细步骤),第17张

 通过浏览器访问,出现以下界面代表安装成功 

Linux部署web项目springboot项目(详细步骤),第18张

6.查看动态日志

tail   -f   catalina.out     查看动态日志

Linux部署web项目springboot项目(详细步骤),第19张

tomcat日志说明:

catalina.out:类的输出信息一般为tomcat启动服务时所输出的信息。如果服务启动失败,可以直接去该日志下查看.

localhost:的输出信息一般为服务运行时所输出的日志.如果你的某个功能有错误,可以去该日志下查看相应的信息.(类似于控制台下的输出报错)

 localhost_access* :访问者IP、访问方式、访问地址等

 localhost.2023-05-07.log : 操作信息

 7.关闭tomcat服务

sudo     ./shutdown.sh

 四、安装redis

1.官网下载地址

https://redis.io/download/

Linux部署web项目springboot项目(详细步骤),第20张

 如何想下载稳定版本,可以进入到这个地址下载这个版本

https://download.redis.io/releases/

Linux部署web项目springboot项目(详细步骤),第21张

 2.解压redis.tar.gz

Linux部署web项目springboot项目(详细步骤),第22张

3.编译make

在redis-6.0.5目录下再次执行make命令(只是编译好)

Linux部署web项目springboot项目(详细步骤),第23张

 最终运行结果如下:Linux部署web项目springboot项目(详细步骤),第24张

 4.安装

进入/usr/local/redis目录,输入命令:make PREFIX=/usr/local/redis  install

 这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录

库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm  -rf  /usr/local/redis 即可删除redis。

5.启动redis

进入/usr.local/redis/src目录: ./redis-server     /usr/local/redis/redis.conf

Linux部署web项目springboot项目(详细步骤),第25张

 redis-server 后面是配置文件,目的是根据该配置文件的配置启动redis服务。redis.conf配置文件允许自定义多个配置文件,通过启动时指定读取哪个即可

6.更改配置

更改密码: 

Linux部署web项目springboot项目(详细步骤),第26张

这里我要将daemonize改为yes,不然我每次启动都得在redis-server命令后面加符号&,不这样操作则只要回到Linux控制台则redis服务会自动关闭,同时也将bind注释,将protected-mode设置为no。

这样启动后我就可以在外网访问了。

 Linux部署web项目springboot项目(详细步骤),第27张

Linux部署web项目springboot项目(详细步骤),第28张

 更改文配置之后,在启动redis服务

进入/usr.local/redis/src目录: ./redis-server     /usr/local/redis/redis.conf

 Linux部署web项目springboot项目(详细步骤),第29张

 启动成功redis服务端

五.运行项目

1.运行ssm项目

更改配置文件信息

Linux部署web项目springboot项目(详细步骤),第30张

 注意:将项目放入tomcat目录中的webapps中运行,要是不能运行,可以放入root目录下面运行

Linux部署web项目springboot项目(详细步骤),第31张

 2.运行springboot项目

由于springboot项目自带tomcat配置,所以我们直接单独运行springboot项目

1.将项目打包成jar包或者war包

小编打包成的是jar包,小编在打包过程中遇到了错误,后续下篇会给大家更进,欢迎大家学习!Linux部署web项目springboot项目(详细步骤),第32张

Linux部署web项目springboot项目(详细步骤),第33张

 然后将jar包拖进目录/usr/local/java/中

Linux部署web项目springboot项目(详细步骤),第34张

 2.运行jar包Linux部署web项目springboot项目(详细步骤),第35张

Linux部署web项目springboot项目(详细步骤),第36张

 3.访问项目

 运行成功之后,浏览器就可以访问项目页面了