发表于: 2017-10-18 20:01:57

2 733


今日完成的事:

1.发布应用到tomcat8以及resin

首先tomcat8很简单,安装完毕把war包扔到webapps目录下就可以了。但是有几点需要注意:

首先tomcat的启动脚本不会给你报异常,tomcat到底有没有启动是需要看日志去确定的。

日志位置为tomcat安装目录下logs文件里的catalina.2017-10-18.log文件里。如果你启动的时间段内没有出现异常,那么就可以肯定的是tomcat已经启动了。存在启动失败最多的原因是因为端口被占用,下面给出一个命令来查看相应的端口是否被占用,以及如何杀掉占用端口的应用。

lsof -i:8080

可以看到8080端口已经被占用了,如果不是tomcat在占用,那么就应该使用命令sudo kill 24818,其中24818是占用8080端口应用的pid.


其次就是resin了,resin的发布也很简单,但也有一点要注意,需要开启某个东西,不然无法进入admin-resin页面,需要开启admin页面。进入目录conf,然后打开resin.properties将web_admin_external:true的注释去掉。


还有一点就是将已经的应用改为主应用,简单来说就是访问xxxxxx:8080能直接跳转到自己的应用首页而不是resin的默认首页,那么需要在resin.xml中进行配置。同样进入conf目录,打开resin.xml

找到并做出修改

<host id="" root-directory=".">

<web-app id="/" root-directory="webapps/你的应用名"/>

如下图:


2.成功编写并测试通过启动,关闭,重启,发布resin容器的脚本

先上图:

弄个单机环境的shell脚本也不是特别难,主要也是各种命令查google百度。


明天计划完成的事:

1.测试rest请求

2.了解下什么是nginx


遇到的困难:

首先就是说在部署tomcat的时候脚本明明提示成本但还是无法访问,解决方法就是自己查看了日志文件确认了tomcat没有启动成功,原因是因为端口被占用。端口的问题使用lsof -i:8080和sudo kill 命令解决


还有就是resin无法访问admin-resin页面的问题,在陈昊大佬的帮助下顺利解决。


最后就是在写脚本的时候刚开始自己是想先获取路径下的文件名,然后判断是否包含.war确定是否有部署的应用,但老是出问题,最后在老大的帮助下发现可以直接获取文件的后缀,使用$filename##*.即可。


收获:

对于tomcat,resin,jetty的部署以及常见问题有了基本的认识和解决方法。对shell脚本有了初步的理解和使用经验


返回列表 返回列表
评论

    分享到