linux部署javaweb应用
来源:互联网 发布:什么是网络渗透技术 编辑:程序博客网 时间:2024/06/05 12:08
1.正确连接服务器(SecureCRT,putty等工具可连接服务器),上传或下载必要工具,如解压工具,待发布的代码等。
2.安装tomcat,设置tomcat以独立的用户运行(注意是否需要修改tomcat端口)
sudo useradd -d /opt/tomcat -s /usr/sbin/nologin tomcat
可以使用cat /etc/passwd 查看用户列表,看是否增加了一个tomcat用户,cat /etc/group查看用户组
3.以新增的tomcat用户运行tomcat时会写tomcat下logs和work两个文件夹,故需要将这两个文件夹拥有者指定为tomcat用户
chown tomcat:tomcat work
chown tomcat:tomcat logs
4.修改bin下*.sh的可执行权限
chmod u+x *.sh
u指文件所有者,+x表示添加可执行权限
5.使用jsvc封装tomcat的启动脚本(javaservice)
下面是/etc/init.d/tomcat1的内容,指定了jdk的路径
6./etc/init.d/tomcat1 start启动tomcat,查看tomcat的log看是否成功启动,没有异常信息输出可以通过浏览器测试访问tomcat服务
7.需连接数据库时可能需要安装数据库客户端,以mysql为例
安装mysql客户端yum install mysql
yum install mysql
或者 apt-get install mysql-client-core-5.7
或者下载安装包安装
tomcat1:
###start###
#!/bin/sh
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# resolve links - $0 may be a softlink
#chj add for chkconfig
# chkconfig: - 66 38
# description: tomcat jsvc 2 .
# processname: jsvc
# pidfile: /opt/tomcat7.0.6/logs/catalina-daemon.pid
#chj add env
CATALINA_HOME="/opt/tomcat1"
JAVA_HOME="/opt/jdk1.8.0_45"
#add end here.
ARG0="$0"
while [ -h "$ARG0" ]; do
ls=`ls -ld "$ARG0"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
ARG0="$link"
else
ARG0="`dirname $ARG0`/$link"
fi
done
DIRNAME="`dirname $ARG0`"
PROGRAM="`basename $ARG0`"
for o
do
case "$o" in
--java-home )
JAVA_HOME="$2"
shift; shift;
continue
;;
--catalina-home )
CATALINA_HOME="$2"
shift; shift;
continue
;;
--catalina-base )
CATALINA_BASE="$2"
shift; shift;
continue
;;
--catalina-pid )
CATALINA_PID="$2"
shift; shift;
continue
;;
--tomcat-user )
TOMCAT_USER="$2"
shift; shift;
continue
;;
* )
break
;;
esac
done
# Setup parameters for running the jsvc
#
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
# JAVA_HOME=/opt/jdk-1.6.0.22
# If not set we'll try to guess the JAVA_HOME
# from java binary if on the PATH
#
if [ -z "$JAVA_HOME" ]; then
JAVA_BIN="`which java 2>/dev/null || type java 2>&1`"
test -x "$JAVA_BIN" && JAVA_HOME="`dirname $JAVA_BIN`"
test ".$JAVA_HOME" != . && JAVA_HOME=`cd "$JAVA_HOME/.." >/dev/null; pwd`
else
JAVA_BIN="$JAVA_HOME/bin/java"
fi
# Only set CATALINA_HOME if not already set
test ".$CATALINA_HOME" = . && CATALINA_HOME=`cd "$DIRNAME/.." >/dev/null; pwd`
test ".$CATALINA_BASE" = . && CATALINA_BASE="$CATALINA_HOME"
test ".$CATALINA_MAIN" = . && CATALINA_MAIN=org.apache.catalina.startup.Bootstrap
test ".$JSVC" = . && JSVC="$CATALINA_BASE/bin/jsvc"
# Ensure that any user defined CLASSPATH variables are not used on startup,
# but allow them to be specified in setenv.sh, in rare case when it is needed.
CLASSPATH=
#JAVA_OPTS=
# chj add
#JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx2048m -XX:MaxNewSize=512m -XX:MaxPermSize=256m -XX:+CMSClassUnloadingEnabled"
echo "java_opts: $JAVA_OPTS"
#end add
if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then
. "$CATALINA_BASE/bin/setenv.sh"
elif [ -r "$CATALINA_HOME/bin/setenv.sh" ]; then
. "$CATALINA_HOME/bin/setenv.sh"
fi
# Add on extra jar files to CLASSPATH
test ".$CLASSPATH" != . && CLASSPATH="${CLASSPATH}:"
CLASSPATH="$CLASSPATH$CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/commons-daemon.jar"
test ".$CATALINA_OUT" = . && CATALINA_OUT="$CATALINA_BASE/logs/catalina-daemon.out"
test ".$CATALINA_TMP" = . && CATALINA_TMP="$CATALINA_BASE/temp"
# Add tomcat-juli.jar to classpath
# tomcat-juli.jar can be over-ridden per instance
if [ -r "$CATALINA_BASE/bin/tomcat-juli.jar" ] ; then
CLASSPATH="$CLASSPATH:$CATALINA_BASE/bin/tomcat-juli.jar"
else
CLASSPATH="$CLASSPATH:$CATALINA_HOME/bin/tomcat-juli.jar"
fi
# Set juli LogManager config file if it is present and an override has not been issued
if [ -z "$LOGGING_CONFIG" ]; then
if [ -r "$CATALINA_BASE/conf/logging.properties" ]; then
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"
else
# Bugzilla 45585
LOGGING_CONFIG="-Dnop"
fi
fi
test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER"
# Set -pidfile
test ".$CATALINA_PID" = . && CATALINA_PID="$CATALINA_BASE/logs/catalina-daemon.pid"
# ----- Execute The Requested Command -----------------------------------------
case "$1" in
run )
shift
"$JSVC" $* \
-java-home "$JAVA_HOME" \
-pidfile "$CATALINA_PID" \
-wait 10 \
-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" \
$CATALINA_MAIN
exit $?
;;
start )
"$JSVC" \
-java-home "$JAVA_HOME" \
-user $TOMCAT_USER \
-pidfile "$CATALINA_PID" \
-wait 10 \
-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" \
$CATALINA_MAIN
exit $?
;;
stop )
"$JSVC" \
-stop \
-pidfile "$CATALINA_PID" \
-classpath "$CLASSPATH" \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMP" \
$CATALINA_MAIN
exit $?
;;
version )
"$JSVC" \
-java-home "$JAVA_HOME" \
-pidfile "$CATALINA_PID" \
-classpath "$CLASSPATH" \
-errfile "&2" \
-version \
-check \
$CATALINA_MAIN
if [ "$?" = 0 ]; then
"$JAVA_BIN" \
-classpath "$CATALINA_HOME/lib/catalina.jar" \
org.apache.catalina.util.ServerInfo
fi
exit $?
;;
* )
echo "Unkown command: \`$1'"
echo "Usage: $PROGRAM ( commands ... )"
echo "commands:"
echo " run Start Catalina without detaching from console"
echo " start Start Catalina"
echo " stop Stop Catalina"
echo " version What version of commons daemon and Tomcat"
echo " are you running?"
exit 1
;;
esac
###end###
参考点击打开链接
- linux部署javaweb应用
- linux下部署JavaWeb应用以及mysql目录结构
- linux 部署javaweb项目
- Linux 部署JavaWeb 项目
- linux 部署javaweb环境
- Linux(shell)部署JavaWeb项目
- Linux部署javaWeb项目环境
- Linux下部署Javaweb项目
- Linux下部署Javaweb项目
- linux上部署javaweb项目
- Tomcat中部署JavaWeb应用:静态部署和动态部署
- 在VPS上部署javaweb应用
- 【坑】在windows上部署JavaWeb应用
- 部署JavaWeb应用到Tomcat服务器上
- 利用MyEclipse建立JavaWeb应用并部署
- 将javaweb项目部署到linux下
- 关于linux下部署javaWeb项目
- 关于Linux部署javaweb(1)
- Bootstrap笔记4—表单
- 任意大小的图片在固定容器居中显示
- Spark性能优化之道——解决Spark数据倾斜(Data Skew)的N种姿势
- ant编译Android项目的过程
- android 计时器
- linux部署javaweb应用
- 魅6真机studio直接运行安装失败原因
- Kubernetes原理简介
- 算法提高 实数相加
- Tomcat内存设置详解
- Java synchronized关键字学习二
- 双camera同时打开
- ThinkPad T410 拆机(高清)
- 锂电池电压电量关系