阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

1.阿里云Linux 服务器
2.安装连接Linux 服务器工具:MobaXterm (用于连接Linux和ftp文件上传)
3.安装部署:jdk,tomcat,mysql

**

一. 购买阿里云Linux服务器

**
阿里云地址:阿里云地址
上官网买,或者去淘宝买,会便宜一点点,我花了300+买了一个。
然后打开阿里云控制台:
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

**
然后要设置linux的root用户名的密码,这个自己设置不说了。

二. MobaXterm 工具的下载和使用

**
使用这个工具,我们不仅可以远程连接linux,还可以用它自定的ftp工具 上传文件到linux,而且linux文件在这里可以可视化,比较方便我们手动操作取代一些命令.
下载地址: MobaXterm
我选择的是绿色版;
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

远程连接linux:
Session —SSH —Remote host—Specify username
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

  进来后输入密码,(这里输入密码光标是不动的,所以输完按enter键就行了):

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

看左边目录就是root下的文件夹了 "."开头的是隐藏文件,所以文件都一目了然了,非常方便,右键还是添加和删除操作。
然后来看一下ftp文件的上传(也可以直接用上面的ssh界面直接把本地的文件拉取进去相应目录就行了):
Session—SFTP—Remote host(Linux的ip)—Username(Linux的用户名,默认有一个root)
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

 左边是你本地的文件夹,直接拉到右边linux 文件夹就行了,右键可以删除。

三.安装部署:jdk,tomcat,mysql

   工具的安装可以在linux 上输入 网络地址进行下载后安装,也可以在本地下载完后,用ftp上传到linux上安装,都行。

1)安装jdk(.tar.gz 的压缩文件,解压完就可以使用,不用安装):

   说明:比如在根目录新建download文件夹:那么我们可以直接在可视化工具里面看是否创建成功如下:
  
  mkdir /download
 如下,我们用工具看是否创建成功,输入根目录然后按enter 出现了,这里不能实时更新,所以操作完文件夹后要按enter:

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

2.本地下载jdk1.8,选择linux,tar.gz版本:[jdk1.8](https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

下载后我放在E盘,然后通过MobaXterm的fpt功能把本地的jdk压缩包托到linux里的download文件夹里面如下,或者在ssh 界面里面直接拖进去就行了。。:
过程有点慢:
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

上传完后,解压文件夹到/usr/java 目录中:

   tar -xzf /download/jdk-8u181-linux-x64.tar.gz -C /usr/java

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

然后我们重命名下这个jdk文件名为jdk18:

cd /usr/java

mv jdk1.8.0_181 jdk18

然后开始配置环境变量:
1.编辑/etc/profile :

 vi /etc/profile

2.按i键进入编辑模式,然后在最后面添加下面信息:

#set java environment
export JAVA_HOME=/usr/java/jdk18
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH

3.按Esc 键退出编辑模式,输入:wq 保存 并关闭文件。
4.加载环境变量:source /etc/profile
5.查看jdk是否安装成功,显示出具体版本信息则成功了:java -version
2) 安装Tomcat8.5.34:
上面有上传的方式安装,这次在linux上下载安装:
Tomcat8.5.34 下载地址
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

进入download目录:

cd  /download

输入pwd看是否进入了download目录。进入以后下载tomcat
上面的tomcat 链接地址复制出来后 wget 后粘贴地址:

wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz

如下,下载成功:
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

 新建 usr/java/tomcat 目录:


mkdir -p /usr/java/tomcat

压缩包解压到新建的tomcat目录:

tar -xzf /download/apache-tomcat-8.5.34.tar.gz -C /usr/java/tomcat

如下成功了:
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

然后把文件名改短一点:tomcat8.5

cd  /usr/java/tomcat
mv apache-tomcat-8.5.34 tomcat8.5

然后启动tomcat下bin目录的startup.sh 文件即可:

cd tomcat8.5/bin/
./startup.sh

显示tomcat started. tomcat启动了.

接下来在阿里云设置放行8080端口就行了:
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

这样8080 端口就放行了(这里注意,防火墙有2层,阿里云自己又1层,然后linux 里面有1层)。
最后还要在linux里防火墙开放8080端口:

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

查看所有端口:

firewall-cmd --zone=public --list-ports

发现有8080出现就成功了

最后打开网页输入:ip:8080 出现tomcat页面就说明成功了。
然后把项目war包拖进去tomcat下webapp里面,在启动tomcat就行了,项目就可以跑了

关于tomcat 我们还可以改端口,还有开机自启.
配置server.xml(改端口号)
打开文件 /usr/java/tomcat/tomcat8.5/conf/server.xml
阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装
按“i”键,进入编辑默认,找到8080,这里换成你要的端口号
然后按"Esc" 键 ,按“:wq”,保存退出。(然后要防火墙要开放对应端口号。阿里云安全组也要开放对应端口号,上面有了不讲了)
最后重启tomcat 就行了。
tomcat 开机自启
Linux不像window系统那样简单,这里需要写一个脚本去执行startup.sh
1)创建tomcat自启动命令脚本(vi进入,没有的话会自己新建文件./etc/init.d 是 指向 /etc/rc.d/init.d 的软链接,这个目录存放的是一些脚本,一般是linux以rpm包安装时设定的一些服务的启动脚本。系统在安装时装了好多rpm包,这里面就有很多对应的脚本。执行这些脚本可以用来启动,停止,重启这些服务。举个例子来说,如果你要重新启动 sendmail 的话,而且你的 sendmail 是以 rpm 来安装的,那么下达 /etc/rc.d/init.d/sendmail restart 就可以直接启动 sendmail 啰!我们的tomcat不是rpm安装的这里不会自动生成启动文件,所以我们自己写一个文件让它去启动bin目录下的startup.sh,然后给它设置开机自启动就行了)

vim /etc/init.d/tomcat

按“i”,进入编辑,复制一下内容进入,主要注意修改JAVA_HOME和CATALINA_HOME CATALINA_BASE字段, 匹配自己的jdk和tomcat安装路径 。

#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export JAVA_HOME=/usr/java/jdk18
export CATALINA_HOME=/usr/java/tomcat/tomcat8.5
export CATALINA_BASE=/usr/java/tomcat/tomcat8.5
start()
{
        if [ -f $CATALINA_HOME/bin/startup.sh ];
          then
            echo $"Starting Tomcat"
                $CATALINA_HOME/bin/startup.sh
            RETVAL=$?
            echo " OK"
            return $RETVAL
        fi
}
stop()
{
        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
          then
            echo $"Stopping Tomcat"
                $CATALINA_HOME/bin/shutdown.sh
            RETVAL=$?
            sleep 1
            ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
            echo " OK"
            # [ $RETVAL -eq 0 ] && rm -f /var/lock/...
            return $RETVAL
        fi
}

case "$1" in
 start)
        start
        ;;
 stop)
        stop
        ;;

 restart)
         echo $"Restaring Tomcat"
         $0 stop
         sleep 1
         $0 start
         ;;
 *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac
exit $RETVAL

按“Esc”,进入命令模式,输入":wq",保存退出
设置脚本权限为可执行:

chmod a+x /etc/init.d/tomcat

注册成服务并让它开机自启:

 systemctl enable tomcat

查看是否设置开机自启成功了:

systemctl is-enabled tomcat 

阿里云 Linux下CentOS7 部署javaweb环境 ------ 1.jdk8,tomcat8安装

查看tomcat是否启动:

systemctl status tomcat