使用linux部署项目步骤
创始人
2024-06-02 16:15:59
0

文章目录

  • 前言
  • 一、服务器环境配置
  • 二、数据库导入
  • 三、项目打包
    • 1、修改项目中的访问路径
    • 2、修改db.properties的数据库访问路径
    • 3、打包
    • 4、修改配置,启动服务
  • 四、测试
  • 总结


前言

今天学习了在服务器中部署项目,记录一下


一、服务器环境配置

  1. 首先要安装VMware,网上有很多教程,此处不再赘述。我使用的是14pro

  2. 在虚拟机中使用CentOs7的镜像新建一个计算机。这个计算机作为我们项目上线的服务器使用
    在这里插入图片描述
    这里建议使用ip地址命名这个服务器,方便我们后期使用,具体的安装步骤和下载镜像等,不再赘述

  3. 安装FinalShell,它是一个工具,可以让我们链接远程数据库,对其进行操作。安装步骤不再赘述。
    在这里插入图片描述
    安装完成之后,链接我们的服务器如下
    在这里插入图片描述
    在这里插入图片描述

  4. 将适用于linux的jdk1.8压缩包,和Tomcat安装包通过FinalShell传入服务器的root目录
    在这里插入图片描述

  5. 删除linux自带的JDK和Tomcat命令如下:

[root@localhost 桌面]# rpm -qa | grep java  查看系统中默认安装的jdk[root@localhost 桌面]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64[root@localhost 桌面]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64[root@localhost 桌面]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64[root@localhost 桌面]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64[root@localhost 桌面]# java -version
bash: java: 未找到命令...

出现:java -version找不到则卸载成功

  1. 将压缩包解压到usr/local目录下
[root@localhost ~]# tar  -zxvf  jdk-8u151-linux-x64.tar.gz  -C  /usr/local
  1. 配置环境变量,输入以下命令:
[root@localhost ~]# vim /etc/profile

先输入 i 字母进入编辑模式,然后在文件中输入以下内容

JAVA_HOME=/usr/local/jdk1.8.0_151
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

按esc键退出,输入 :wq 回到当前目录,输入java -version检测是否成功

  1. 如果不行,需要刷新资源,或者重启虚拟机,刷新资源的配置如下:
[root@localhost ~]# source /etc/profile
  1. 安装Tomcat,解压到 usr/local 目录下
[root@localhost ~]# tar  -zxvf  apache-tomcat-8.5.23.tar.gz  -C  /usr/local

关闭防火墙

[root@localhost ~]# systemctl  stop  firewalld.service 

切换到tomcat的bin目录

[root@localhost ~]# cd /usr/local
[root@localhost local]# cd apache-tomcat-8.5.23/bin

启动tomcat

[root@localhost bin]# ./startup.sh 

关闭tomcat

[root@localhost bin]# ./shutdown.sh
  1. 安装mysql
    CentOS中默认安装的是MariaDB,安装完MySQL之后会覆盖MariaDB,由于安装MySQL需要添加很多依赖关系,所以这里使用yum安装.
  • .下载MySQL源安装包
    [root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm


执行命令出现以下提示

2019-10-17 14:37:41 (230 KB/s) - 已保存 “mysql57-community-release-el7-10.noarch.rpm”
[25548/25548])
-c: 没有那个文件或目录
在 -c 中找不到 URL。
FINISHED --2019-10-17 14:37:41–
Total wall clock time: 7.4s
Downloaded: 1 files, 25K in 0.1s (230 KB/s)

  • 安装MySQL源(如果无法安装,先执行该命令:rm -f /var/run/yum.pid)
    [root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm


执行命令出现以下提示

Running transaction
正在安装 : mysql57-community-release-el7-10.noarch 1/1
验证中 : mysql57-community-release-el7-10.noarch 1/1
已安装:
mysql57-community-release.noarch 0:el7-10
完毕!

  • 安装MySQL
 [root@localhost ~]# yum install mysql-community-server --nogpgcheck


执行命令出现以下提示

作为依赖被安装:
mysql-community-client.x86_64 0:5.7.28-1.el7 mysql-community-common.x86_64 0:5.7.28-1.el7
作为依赖被升级:
openssl.x86_64 1:1.0.2k-19.el7 openssl-libs.x86_64 1:1.0.2k-19.el7
postfix.x86_64 2:2.10.1-7.el7
替代:
mariadb-libs.x86_64 1:5.5.52-1.el7
完毕!

  • 启动MySQL
 [root@localhost ~]# systemctl start mysqld.service
  • 查看MySQL运行状态
 [root@localhost ~]# systemctl status mysqld.service

执行命令出现以下提示

mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 四 2019-10-17 15:00:59 CST; 26s ago

  • 设置MySQL自启动
[root@localhost ~]# systemctl enable mysqld
  • 配置MySQL
 [root@localhost ~]# vim /etc/my.cnf
  • 在/etc/my.cnf的[mysqld]中增加如下内容:(建议添加到最后一行)
  #不添加则在设置MySQL新密码时会错#用于设置MySQL的字符集#用于设置MySQL的远程连接validate_password=offcharacter_set_server=utf8skip-name-resolve
  • 重新启动MySQL
[root@localhost ~]# systemctl restart mysqld.service
  • 此时MySQL已经运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:
[root@localhost ~]# grep "password" /var/log/mysqld.log

执行命令出现以下提示:

2019-10-17T07:00:52.740835Z 1 [Note] A temporary password is generated for root@localhost: l0hN)kEXugYv
2019-10-17T07:14:54.867706Z 3 [Note] Access denied for user ‘root’@‘localhost’ (using password: YES)

  • 登录MySQL
[root@localhost ~]# mysql -uroot -p

输入:l0hN)kEXugYv 进入到MySQL

  • 输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  • 如果执行上面语句报错,则表示设置密码不成功,可能是由于密码级别过低,可以输入下面两个命令:
    mysql> set global validate_password_policy=LOW; //设置mysql密码为最低级别mysql> set global validate_password_length=6; //设置密码长度(根据自己情况设置)
  • 设置MySQL可以远程访问
mysql>grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;

此时可以使用我们的数据库客户端工具进行远程连接,如果连接不上,重启MySQL后再测试

  • 测试成功后,退出MySQL
mysql> exit;Bye
  • 卸载Yum Repository,否则每次yum操作都会自动更新
 [root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch

执行出现以下提示:

正在删除 : mysql57-community-release-el7-10.noarch 1/1

验证中 : mysql57-community-release-el7-10.noarch 1/1

删除:

mysql57-community-release.noarch 0:el7-10

完毕!

  • 测试远程连接,连接未成功,需要再次关闭防火墙,重启MySQL

关闭防火墙:

 [root@localhost ~]#systemctl  stop  firewalld.service

使用Navcat测试:
在这里插入图片描述
至此,服务器基本搭建完成

二、数据库导入

链接上服务器数据库之后,我们需要把windows系统的数据库,迁移到服务器数据库,将原有数据库导出转储sql文件,然后在服务器数据库新建查询,执行sql即可,此处略。

三、项目打包

只有打成war包,才能部署到服务器,但在打包之前,我们还需要一些步骤。

1、修改项目中的访问路径

在这里插入图片描述
所有有关localhost:8080的路径地址都需要修改,要么加上服务器ip,要么就以上图这种形式。

2、修改db.properties的数据库访问路径

在这里插入图片描述
此处换上服务器的ip和服务器mysql的数据库名

3、打包

先清除之前的编译文件,否则由于修改了部分配置,打包会报错
在这里插入图片描述
然后点击package等待打包完成
在这里插入图片描述
target目录下出现此文件,就是我们打好的包,然后将其传入服务器

4、修改配置,启动服务

将打好的war包,通过FinalShell导入到tomcat安装目录下的webapps问价夹下
在这里插入图片描述
此时Tomcat若是处于开启状态,那么会自动帮我们解压
由于我们打的jar包是自动生成的我们还需要修改一下conf文件夹中的server.xml配置,否则可能会出现运行项目出现问题。我们需要在host标签中,加入以下代码:


修改完成后,切换到bin目录下,启动服务

启动tomcat

  [root@localhost bin]# ./startup.sh 

关闭tomcat

  [root@localhost bin]# ./shutdown.sh

四、测试

在这里插入图片描述
输入信息
在这里插入图片描述

跳转首页
在这里插入图片描述
各项功能正常


总结

虚拟机搭服务器,目前大多被用来当作自测的一种解决方案,只允许本机访问,想外网访问的话,还是搭建云服务器更加方便

相关内容

热门资讯

11年奥德赛改安卓系统 哇,你有没有想过,一辆已经行驶了11年的奥德赛,竟然可以通过改装,焕发出新的活力?没错,就是将它的系...
原生安卓系统缺陷有哪些 亲爱的读者,你是否曾为安卓手机的流畅度而烦恼?你是否好奇过,为什么有些手机用起来那么顺滑,而你的手机...
江湖悠悠安卓跟苹果系统,安卓与... 江湖悠悠,安卓与苹果系统之争在这个信息爆炸的时代,手机已经成为了我们生活中不可或缺的一部分。而手机操...
安卓车机系统桌面崩溃,原因分析... 最近你的安卓车机系统是不是也遇到了桌面崩溃的烦恼?这可真是让人头疼啊!想象你正开着车,音乐播放得正h...
是不是安卓系统版本越高,体验更... 你有没有想过,是不是安卓系统版本越高,手机就越流畅呢?这个问题可是让不少手机用户纠结不已。今天,就让...
vivo安卓新系统怎么更新,体... 亲爱的手机控们,是不是最近你的vivo手机有点儿“老态龙钟”,运行速度慢了下来,界面也显得有点儿陈旧...
安卓系统输入法比较,功能、体验... 你有没有发现,手机里的输入法就像是我们日常生活中的小秘书,默默无闻地陪伴着我们打字、聊天、工作。而如...
安卓子系统看啥应用,探索“看啥... 你有没有想过,你的安卓手机里那些神秘的子系统里都藏着什么秘密?今天,就让我带你一探究竟,看看安卓子系...
安卓系统可用的王者符号 你有没有发现,最近手机上流行起了一种超酷的符号?没错,就是安卓系统上那些让人眼前一亮的王者符号!这些...
安卓系统切换ios系统还原,还... 你有没有想过,手机系统就像是我们生活中的衣服,有时候穿久了,就想换一件新的来换个心情。今天,就让我来...
原生安卓系统新消息显示,全新消... 亲爱的读者们,你是否也像我一样,对手机系统的新动态充满好奇?最近,关于原生安卓系统的新消息显示功能,...
安卓手机好用的手机系统,盘点那... 你有没有发现,现在市面上手机种类繁多,各种操作系统争奇斗艳,但要说最得人心的,还得是安卓手机系统。为...
kupa平板电脑刷安卓系统,畅... 你有没有想过,家里的老Kupa平板电脑,是不是也能焕发第二春呢?没错,就是那个陪伴你度过了无数悠闲时...
如何看网络密码安卓系统,网络密... 说到网络密码,这可是个让人又爱又恨的话题呢!你有没有想过,为什么你的安卓手机里那么多密码,有时候记都...
安卓系统许可证,解读其核心内容... 你知道吗?在智能手机的世界里,有一个神秘的“许可证”在默默守护着我们的安卓系统。它就像一位默默无闻的...
安卓系统hm的应用 你知道吗?在安卓系统的应用世界里,有一个叫做hm的应用,它可是隐藏着不少秘密呢!今天,就让我带你一起...
安卓系统ipad英文转换中文,... 你有没有想过,为什么安卓系统的iPad也能用英文呢?这背后可是有学问的哦!今天,就让我带你一探究竟,...
安卓系统哪个品牌手好,揭秘哪款... 你有没有想过,安卓系统里哪个品牌的手机用起来最得心应手呢?这个问题可真是让人纠结啊!市面上那么多品牌...
出厂安卓11系统手机,揭秘新一... 你有没有发现,最近市面上新出的手机,好像都换了个“新衣裳”?没错,就是那个传说中的出厂安卓11系统手...
升级安卓平板电脑系统 亲爱的平板电脑用户们,你是否也和我一样,对那台陪伴你多年的安卓平板电脑心生爱意,却又忍不住想要给它来...