在阿里云上部署war包至tomcat服务器~挖坑与填坑之路

之前在做Javaweb项目时,我只负责整个项目的开发,然后导出成war包,直接交给运维人员去部署就完事了。今天脑袋一热,想自己尝试着在阿里云上部署一个war项目。果然各种的坑。。。还好最后成功了,把整个过程记录一下,方便以后使用。本文出处:https://www.cnblogs.com/cnhkzyy/p/9125105.html. 本人按照这个进行部署,大致思路是对的,但是有一些小细节还是要补充一下。另外本人没有用到数据库,留着以后用数据库的时候再挖坑和填坑。

1 准备工作

下载xshell和xftp,这个不多说了。然后直接在xshell的命令行中输入 ssh root@后面跟公网ip。回车,再输入密码。如图所示: 在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第1张图片
这就是登录成功了。再在xshell的菜单栏中点击下图所示的绿色按钮,打开该云服务器对应的xftp,用于将本机传输文件上云用的。
在这里插入图片描述

xftp界面如图所示:
在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第2张图片

2 jdk安装

tomcat依赖于java运行环境,所以安装tomcat前必须安装jdk

jdk的官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

提供Oracle账号仅用于jdk 下载:

[email protected]
OracleTest1234

这里我用的是jdk-8u65-linux-x64.tar.gz,安装步骤如下:

  1. 在本地解压jdk-8u65-linux-x64.tar.gz,用xftp上传到阿里云环境(其实我个人喜欢拖拽的方式)。上传路径为: /usr/local
    在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第3张图片

  2. 赋予jdk目录最高权限,防止权限问题的发生,在xshell中操作如下:

    1) 切换到jdk所在的目录:cd /usr/local

    2) 赋予jdk目录最高权限: chmod 777 -R jdk1.8.0_65 (注意:-R在这里的意思是递归的修改权限)

  3. 配置jdk环境变量

    1) 切换到环境变量配置文件所在的目录:cd /etc

    2)编辑配置文件profile:vim profile

    3) 按键盘上的 i 键进入编辑模式,一直跳到配置文件的末尾

    4)配置jdk的环境变量,输入以下内容(直接在末尾复制粘贴)

    export JAVA_HOME=/usr/local/jdk1.8.0_65 
    export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
    

    5) 按键盘上的ESC键退出编辑模式,然后输入 :wq,就保存了你刚才设置的环境变量

    6) 让你设置的环境变量生效: source profile

  4. 检查jdk是否安装配置成功,输入 java -version,看到如下jdk版本的截图,就说明成功了!
    在这里插入图片描述

3 tomcat安装

tomcat的官网下载地址:http://tomcat.apache.org/ 官网有点慢,有时候还打不开,建议自行百度别人下好的包,然后下载。

这里我用的是apache-tomcat-8.0.37.tar.gz,安装步骤如下:

  1. 在本地解压apache-tomcat-8.0.37.tar.gz,上传到阿里云环境的/url/local目录下

  2. 启动tomcat

    1) 切换到tomcat启动命令所在的bin目录:cd /usr/local/apache-tomcat-8.0.37/bin下

    2)执行tomcat启动命令:./startup.sh(或者:sh startup.sh),如截图所示,表示成功了
    在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第4张图片
    在执行startup.sh中我遇到这样一个问题,如果上述已经start成功了,这就不用看了
    在这里插入图片描述
    解决方案是:给.sh文件授权,即输入 chmod +x *.sh,然后再执行startup.sh。如下图所示:
    在这里插入图片描述
    3) 一般tomcat默认端口是8080,我们在浏览器中输入http://公网ip:8080,如果出现下图所示表示tomcat安装已经成功。
    在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第5张图片

这块绝对是大坑,我解决了好久,很少会有人直接能在自己浏览器上运行出tom猫

结合这篇博文,链接: https://blog.csdn.net/weixin_35703883/article/details/80908983 , 另外填了无数坑,才算是把tom猫弄出来。接下来的哪一个步骤都不能少:

如:我要访问的地址是:http://47.94.108.28:8080

排查步骤:

1、本地打开cmd,输入ping 47.94.108.28,该ip地址正常连接;

2、 查看防火墙是否已关闭:sudo ufw status,显示防火墙已关闭(Status: inactive)

3、查看端口8989是否正常监听:netstat -an | grep 8080,显示信息如下,表示该端口被正常监听。
在这里插入图片描述
确保上述三步都没问题。其中第2步,若出现ufw命令缺失,使用yum install ufw进行安装ufw

接下来就是关键了。。。。

在服务器上通过curl http://47.94.108.28:8080,命令,查看在服务器上是否能直接访问tomcat,发现访问不了。。。。

使用ifconfig命令,得到服务器的ip地址(72.16.17.42),然后再使用curl http://172.16.17.42:8080。

这个时候,奇怪的事情发生了,居然访问成功,但是这个ip 在我本地dos窗口是ping不通的。

配置实例安全组步骤如下:

1、进入安全—>防火墙—>添加规则
在阿里云上部署war包至tomcat服务器~挖坑与填坑之路_第6张图片
另外还有一种云是按照上面博文中方法添加安全组规则,我就不在这里写啦。

2、设置防火墙,执行 ufw allow 8080/tcp命令,允许防火墙放过8080端口。

在这里插入图片描述

3、 查看8080口段是否正常被监听netstat -an | grep 8080

在这里插入图片描述
这时候再重新启动一下tomcat:

关闭tomcat sh shutdown.sh

开启tomcat sh startup.sh

这时候在浏览器上就能看到tom猫了。往后部署war就简单了

4 部署war包到tomcat服务器

  1. 把war包通过xftp上传到/url/local/apache-tomcat-8.0.37/webapps下
  2. 进入tomcat启动命令所在的bin目录:cd /usr/local/apache-tomcat-8.0.37/bin
  3. 启动tomcat: ./startup.sh
  4. 启动后,会在/usr/local/apache-tomcat-8.0.37/webapps目录下生成一个war文件名对应的文件夹
  5. 输入ip+端口号+文件名,就可以看到自己的项目啦,我的项目URL如下:
    在这里插入图片描述

你可能感兴趣的:(Aliyun)