jetty在生产环境中安装方法

发表时间:2017-10-09 13:17:09 浏览量( 33 ) 留言数( 0 )

学习目标:

1、动手在linux的生产环境中安装jetty服务器

2、尝试在linux环境下安装其他的服务器,如tomcat。


学习过程:

上一节我们大概了解了jetty,已经安装jetty的几个具体的步骤,下面我们就在一台linux上面正式的动手安装Jetty,大家以后工作的时候也可以直接参考我们这节课的内容在服务器上面安装Jetty服务器了。

一、检测环境。

必须安装了JDK1.7以上的。没有就先安装JDK,一会需要使用JAVA_HOME的路径

[root@newrun1 java]# java -version

java version "1.8.0_144"

Java(TM) SE Runtime Environment (build 1.8.0_144-b01)

Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)


二、建立相关目录

[root@newrun1 java]# mkdir /opt/jetty

[root@newrun1 java]# mkdri /opt/jetty/temp

[root@newrun1 java]# mkdir  -p /opt/web/mybase


/opt/jetty 用于存放解压后的Jetty发布文件。

/opt/web/mybase 自定义用于存放web应用,包括所有能让它们运行在服务器上的必要配置。

/opt/jetty/temp 这是分配给java服务的临时文件夹(可以把它看作是java.io.tmpdir这个系统属性)。


把jetty解压到当前目录下:

[root@newrun1 jetty]# cd /opt/jetty/

[root@newrun1 jetty]# mv /down/jetty-distribution-9.4.7.v20170914.zip  .

[root@newrun1 jetty]# unzip jetty-distribution-9.4.7.v20170914.zip 

[root@newrun1 jetty]# mv jetty-distribution-9.4.7.v20170914/ jetty-test


三、建立用户

[root@newrun1 jetty]# useradd --user-group --shell /bin/false --home-dir /opt/jetty/temp jetty

这里创建了一个名为jetty的用户,并属于名为jetty的组,不能访问shell(/bin/false),主目录在/opt/jetty/temp。

修改权限

[root@newrun1 jetty]# chown --recursive jetty /opt/jetty

[root@newrun1 jetty]# chown --recursive jetty /opt/web/mybase


四、修改start.ini的配置文件,这些内容也可以在jetty.sh中配置的.

jetty.http.port=8089  #修改端口

jetty.deploy.monitoredDir=/opt/web/mybase/test  #修改默認的webapps


同时要把这个文件拷贝到对应的项目的路径之下.比如我们会把test.war放到test之下的.

[root@newrun1 test]# cd /opt/web/mybase/test/

[root@newrun1 test]# cp /opt/jetty/jetty-test/start.ini .


五、建立服务

1\建立软连接

[root@newrun1 bin]# cd /etc/init.d/

[root@newrun1 init.d]# ln -s /opt/jetty/jetty-test/bin/jetty.sh  jettytest.sh

2\修改jetty.sh

vim jettytest.sh

配置内容如下:

JAVA_HOME=/usr/local/java/jdk

JETTY_HOME=/opt/jetty/jetty-test

JETTY_BASE=/opt/web/mybase/test

JAVA_OPTIONS="-Xms300M -Xmx300M"

TMPDIR=/opt/jetty/temp


六、把war拷贝到对应的目录下面并启动

默认war项目是放到webapps的目录下面的.就是就${jetty_base}/webapps下面的

[root@newrun1 init.d]# cd /opt/web/mybase/test/webapps

[root@newrun1 test]# mv /down/testfirst.war .

如果需要修改上下文路径,那么可以参考demo下面的,在webapps建立一个与war同名的xml文件,修改上下文的路径.

启动项目

http://192.168.137.10:8089/testfirst/ 

[root@newrun1 test]#  /etc/init.d/jettytest.sh start

Starting Jetty: 2017-10-09 14:40:12.752:INFO::main: Logging initialized @633ms to org.eclipse.jetty.util.log.StdErrLog

2017-10-09 14:40:13.112:INFO:oejs.Server:main: jetty-9.4.7.v20170914

2017-10-09 14:40:13.166:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:///opt/web/mybase/test/opt/web/mybase/test] at interval 1

2017-10-09 14:40:13.167:WARN:oejdp.ScanningAppProvider:main: Does not exist: file:///opt/web/mybase/test/opt/web/mybase/test

2017-10-09 14:40:13.194:INFO:oejs.AbstractConnector:main: Started ServerConnector@240f7862{HTTP/1.1,[http/1.1]}{0.0.0.0:8089}

2017-10-09 14:40:13.195:INFO:oejs.Server:main: Started @1076ms

OK 2017年 10月 09日 星期一 14:40:16 CST


监控项目

[root@newrun1 test]#  /etc/init.d/jettytest.sh status

Jetty running pid=26947


JAVA           =  /usr/local/java/jdk/bin/java

JAVA_OPTIONS   =  -Xms300M -Xmx300M -Djetty.home=/opt/jetty/jetty-test -Djetty.base=/opt/web/mybase/test -Djava.io.tmpdir=/opt/jetty/temp

JETTY_HOME     =  /opt/jetty/jetty-test

JETTY_BASE     =  /opt/web/mybase/test

START_D        =  /opt/web/mybase/test/start.d

START_INI      =  /opt/web/mybase/test/start.ini

JETTY_START    =  /opt/jetty/jetty-test/start.jar

JETTY_CONF     =  /opt/jetty/jetty-test/etc/jetty.conf

JETTY_ARGS     =  jetty.state=/opt/web/mybase/test/jettytest.state jetty-started.xml

JETTY_RUN      =  /var/run/jetty

JETTY_PID      =  /var/run/jetty/jettytest.pid

JETTY_START_LOG=  /var/run/jetty/jettytest-start.log

JETTY_STATE    =  /opt/web/mybase/test/jettytest.state

RUN_CMD        =  /usr/local/java/jdk/bin/java -Xms300M -Xmx300M -Djetty.home=/opt/jetty/jetty-test -Djetty.base=/opt/web/mybase/test -Djava.io.tmpdir=/opt/jetty/temp -jar /opt/jetty/jetty-test/start.jar jetty.state=/opt/web/mybase/test/jettytest.state jetty-started.xml

监控项目

[root@newrun1 test]#  /etc/init.d/jettytest.sh check

Jetty running pid=26947


JAVA           =  /usr/local/java/jdk/bin/java

JAVA_OPTIONS   =  -Xms300M -Xmx300M -Djetty.home=/opt/jetty/jetty-test -Djetty.base=/opt/web/mybase/test -Djava.io.tmpdir=/opt/jetty/temp

JETTY_HOME     =  /opt/jetty/jetty-test

JETTY_BASE     =  /opt/web/mybase/test

START_D        =  /opt/web/mybase/test/start.d

START_INI      =  /opt/web/mybase/test/start.ini

JETTY_START    =  /opt/jetty/jetty-test/start.jar

JETTY_CONF     =  /opt/jetty/jetty-test/etc/jetty.conf

JETTY_ARGS     =  jetty.state=/opt/web/mybase/test/jettytest.state jetty-started.xml

JETTY_RUN      =  /var/run/jetty

JETTY_PID      =  /var/run/jetty/jettytest.pid

JETTY_START_LOG=  /var/run/jetty/jettytest-start.log

JETTY_STATE    =  /opt/web/mybase/test/jettytest.state

RUN_CMD        =  /usr/local/java/jdk/bin/java -Xms300M -Xmx300M -Djetty.home=/opt/jetty/jetty-test -Djetty.base=/opt/web/mybase/test -Djava.io.tmpdir=/opt/jetty/temp -jar /opt/jetty/jetty-test/start.jar jetty.state=/opt/web/mybase/test/jettytest.state jetty-started.xml


关闭项目

[root@newrun1 test]#  /etc/init.d/jettytest.sh stop

Stopping Jetty: 2017-10-09 14:43:02.604:INFO:oejs.AbstractConnector:Thread-0: Stopped ServerConnector@240f7862{HTTP/1.1,[http/1.1]}{0.0.0.0:8089}

OK


配置开机启动等,可以参考上一节课的内容。