一,准备环境
虚拟机安装CentOS 7,远程连接工具(这里我用的xshell),tomcat 9官方安装压缩包(tar.gz),jdk1.8官方安装压缩包
二,更改虚拟机的配置
1.关闭防火墙和SELinux
首先我的防火墙是关闭的状态,因为现在我的虚拟机只是用来学习搭建,暂时不涉及到安全方面的考虑,防火墙相当于是一道摆设,关闭防火墙会省去后续配置中的一些步骤,所以我是建议关闭防火墙的,当然你不关闭防火墙,本贴也是有防火墙操作步骤的。
防火墙分为临时关闭和永久关闭。顾名思义,临时关闭状态下,当你重启虚拟机,他就会再次开启,永久关闭即彻底关闭(#符号后为注释,下同)。
systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld
下面状态就是防火墙已经关闭
其次,我的selinux也是处于关闭状态。原因同上,selinux反而会成为一道阻碍,如果你开启了selinux,建议关闭。
setenforce 0
vi /etc/selinux/config
2.配置静态ip
为什么要配置静态ip呢,就是因为我们从客户机访问虚拟机的时候是通过ip地址加端口号来访问的,如果ip地址不是静态的,每次重启都会刷新ip地址,那么每次都得ifconfig看一眼IP地址才可以访问,远程连接工具也得看一眼ip才能连接,所以最好还是配置一下ip地址。
第一步,打开虚拟机的虚拟网络编辑器,把NAT模式的dhcp服务关闭。同时切换网络连接模式为NAT模式。
这时我们可以点开NAT设置看一眼子网ip网段和网关
点击虚拟机标签,打开设置,切换网络连接模式为NAT模式:
然后我们进入系统,使用下面的命令打开网卡的配置文件(最后的ens33配置文件是一张网卡一个配置文件,不确定是哪个网卡可以使用ifconfig查看网卡信息)
vi /etc/sysconfig/network-scripts/ifcfg-ens33
打开后,按 i 进入编辑模式,把BOOTPROTO设置为none,然后在末尾加入语句
IPADDR=“192.168.203.250” —你要设置的ip地址(在你的子网ip网段下) NETMASK=“255.255.255.0” —子网掩码 GATEWAY=“192.168.203.2” ----网关 DNS1=“114.114.114.114” —两个默认dns服务器 DNS2=“8.8.8.8”
输入完成之后按esc键退出编辑模式,然后按输入冒号:,在下方输入wq保存并退出
配置好之后,输入下面命令重启网络服务,然后再次使用ifconfig,就可以看到网卡信息已经改变
systemctl restart network
可以看到我的ens33网卡已经改好,ping一下百度可以测试是否能连通网络,这里我就不ping了。
三,配置JDK
1.安装jdk
物理机准备好下载的jdk1.8(tar.gz)压缩包:
没有的可以从这里下链接:https://pan.baidu.com/s/1UWBO1lnxjuxPGG-zziv5iA 提取码:xspp
使用xshell远程连接到虚拟机,输入java -version(注意要输入完整的参数 -version,不然看不到)
如果你显示的是上图显示的java version “1.8.0_161 ”那些信息,那么说明你安装的jdk是官方Sun公司的1.8应用版本,即我们在windows下开发的1.8版本,可以进行下一步操作。
如果你显示的是下图信息,说明你的jdk版本是CentOS自带的OpenJDK,该版本是jdk的开源版本,和官方版本有授权差异,相当于官方版本的精简版本,可能会有功能方面缺失,尽量换成官方版本执行(ps:这方面我也不太了解,说错了劳烦指正)
yum删除OpenJDK:
yum remove java-* -y
然后进入如下的路径,使用rz命令选择上传jdk的压缩包,并且解压到当前的目录,更改目录名称为jdk1.8(方便记忆和书写):
cd /usr/local
rz
ls
tar -zxvf jdk-8u161-linux-x64.tar.gz
ls
mv jdk1.8.0_161/ jdk1.8
2.配置环境变量
编辑etc目录下的配置文件:
vi /etc/profile
在配置文件的末尾加入下面三行配置(可以直接复制):
export JAVA_HOME=/usr/local/jdk1.8/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
输入完成后保存退出。
然后重新加载profile文件
source /etc/profile
再次输入java -version,查看jdk版本,显示上边的官方版本那么就配置完成!
四,配置web服务
众所周知,我们要在浏览器访问一个网页,那么肯定是要用到http服务的。下面我们就在自己的虚拟机安装配置http服务
首先yum安装http服务:
yum install httpd -y
然后启动httpd服务:
systemctl restart httpd
重启之后,使用以下命令查看端口信息:
netstat -lnpt
可以看到,在local address列下有一个监听80端口的,右侧可以看到进程编号和进程名称是httpd。
五,配置tomcat服务器
准备好tomcat压缩包文件:
没有的可以从Apache官网下https://tomcat.apache.org/download-90.cgi#9.0.56
注意,一定要选Core里边版本!!!
老规矩,rz上传到 /usr/local目录下,然后重命名,我命名叫tomcat9,这里我就不演示了。。。
然后,如果你是关闭了防火墙的,那么进入tomcat9目录的bin目录下,输入./startup.sh,启动服务。
cd tomcat9
cd bin
./startup.sh
到这里我们的tomcat就部署完成了,我们可以在物理机的浏览器输入虚拟机ip冒号8080端口测试,如果能看到下面的页面代表配置成功!!
如果你没有关闭防火墙,那么在启动tomcat服务前,一定要执行下面的命令,开放8080端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
其中,zone的意思是作用域,public就是他是公共可以访问的
add-port的意思是添加端口,格式是上面的端口号/协议
permanent意思是永久生效。
上面命令执行后,重启防火墙:
systemctl restart firewalld
之后就可以正常启动tomcat服务了。
六,部署java项目
首先我们将要部署的java项目打包成war包,这里我项目是SpringMVC写的一个简单的例子,用maven进行打包。
然后进入/usr/local目录,新建一个自己的目录,这里我起名为myProject,然后将我们的war包使用rz命令上传到这个目录下
我们现在要进行tomcat配置文件的编辑,所以要先关闭tomcat服务。在tomcat9的bin目录下输入下面命令:
./shutdown.sh
可以看到tomcat已经关闭。然后我们进入tomcat9的conf目录下,修改server.xml文件
vi /usr/local/tomcat9/conf/server.xml
找到下面的条目,插入我们的资源路径
在下边输入下面的配置(可以直接复制):
<Context path="/project" docBase="/usr/local/myDir/SpringMVC_demo1-1.0.war"/>
编辑好保存退出,进入tomcat9的bin目录下输入下面命令启动tomcat
./catalina.sh run
如果没问题,那么等待大概不到十秒,你就能看到下面熟悉的日志信息:
然后我们在物理机的浏览器输入地址,就可以成功访问到了:
|