config Tomcat service on ubuntu14 server as daemon thread

在部署tomcat的時候發現一個問題,當啓動此tomcat的用戶全部退出之後tomcat服務竟然掛掉了。ssh連上又自動開始運行了。經查是進程被kill子進程也被kill了。(深層次原因我也不懂,菜雞一枚。。。)

解決辦法。https://tomcat.apache.org/tomcat-7.0-doc/setup.html

tomcat版本8.0.21

jdk版本1.8

server ubunut14.04

需要軟件gcc make

解壓tomcat_home/bin/commons-daemon-native.tar.gz

cd到解壓的目錄

編譯 ./configure 

make

打開daemon.sh 

配置JAVA_HOME

配置CATALINA_HOME

配置server啓動參數 -jvm server -Xmx -Xms ...

配置tomcat user = current user(root 會有問題)

配置tomcat Security random key 好像是這個,要不tomcat啓動特別慢 親測90s

在start啓動參數裏新加啓動參數(按照寫好的格式寫就行了)

# ----- Execute The Requested Command -----------------------------------------
case "$1" in
    run     )
      shift
      "$JSVC" $* \
      $JSVC_OPTS \
      -java-home "$JAVA_HOME" \
      -pidfile "$CATALINA_PID" \
      -wait "$SERVICE_START_WAIT_TIME" \
      -nodetach \
      -outfile "&1" \
      -errfile "&2" \
      -classpath "$CLASSPATH" \
      "$LOGGING_CONFIG" $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMP" \

      -Djava.security.egd=file:/dev/./urandom \
      $CATALINA_MAIN
      exit $?
    ;;
    start   )
      "$JSVC" $JSVC_OPTS \
      -java-home "$JAVA_HOME" \
      -user $TOMCAT_USER \
      -pidfile "$CATALINA_PID" \
      -wait "$SERVICE_START_WAIT_TIME" \
      -outfile "$CATALINA_OUT" \
      -errfile "&1" \
      -classpath "$CLASSPATH" \
      "$LOGGING_CONFIG" $JAVA_OPTS $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMP" \

       -Djava.security.egd=file:/dev/./urandom \
      $CATALINA_MAIN
      exit $?
    ;;

最好run裏也寫上

然後將此文件copy到/etc/init.d

命名爲tomcat

執行

sudo update-rc.d tomcat defaults
如果你想更改爲80端口 請使用sudo service tomcat start 系統端口必須要有root權限,你也可以採用iptables 將8080端口轉發到80端口 重啓會有問題,至於如何轉發,請google之

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章