本文用於在雲服務器(CentOS7.4)上部署網站,但不包含數據庫的安裝和配置。
0 前置準備
- CentOS 7.4服務器
- 網站的war包(網站不包含數據庫交互)
1 安裝jdk,tomcat,環境變量配置,tomcat自啓動
複製文末腳本,命名爲DeployWebsite.sh,將war包和腳本以及開機啓動配置文件(文末)放在一個目錄,使用以下命令啓動腳本。
bash DeployWebsite.sh
2 配置域名直接訪問
修改apache-tomcat-xxx/conf/server.xml,共修改三個部分。
# 端口修改
<Connector port="80" protocol="HTTP/1.1" # 改成80端口
connectionTimeout="20000"
redirectPort="8443" />
# 域名修改
<Engine name="Catalina" defaultHost="weijian.org"> # 修改成自己的域名
<Host name="weijian.org" appBase="webapps" # 改成自己域名
unpackWARs="true" autoDeploy="true">
# 在host標籤下添加項目
# Myself爲項目名稱
<Context path="" docBase="Myself" debug="0" reloadable="true" />
3 阿里雲還需要配置安全組開放端口
4.如果還是不行,檢查防火牆等設置
腳本內容如下,命名爲DeployWebsite.sh
#author:weijian001
#time:2018.06.21
#note:使用時將網站的war包放置在這個目錄下。
# **本腳本包含jdk的安裝,環境變量的配置,tomcat的安裝和部署,tomcat自啓動設置**
# **不包含數據庫的安裝**
# **已經jdk和tomcat版本寫死,有需要自己替換**
#!/bin/bash
# 1.下載jdk-8u171
#
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz
# 2.建立存放jdk的目錄 /usr/local/java
sudo mkdir /usr/local/java
sudo tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local/java
# 3.配置環境變量,全系統設置,修改/etc/profile文件
sudo echo -e "\n\n# Java \n\
JAVA_HOME=/usr/local/java/jdk1.8.0_171 \n\
JRE_HOME=/usr/local/java/jdk1.8.0_171/jre \n\
PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin \n\
CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib \n
export PATH JAVA_HOME JRE_HOME CLASSPATH" >> /etc/profile
source ~/.bash_profile
# 4.下載tomcat v8.5.31
wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz
# 5.建立tomcat文件夾,解壓tomcat
sudo mkdir /usr/local/tomcat
sudo tar -zxvf apache-tomcat-8.5.31.tar.gz -C /usr/local/tomcat
# 6.改變tomact和java的所屬用戶以及用戶組
sudo chmod -R $(whoami) /usr/local/tomcat /usr/local/java
sudo chgrp -R $(whoami) /usr/local/tomcat /usr/local/java
# 7.設置tomcat自啓動
# 移動service配置文件
# 不要放在/lib/systemd/system當中
sudo cp tomcat.service /etc/systemd/system/
# 即使設置了環境變量,tomcat可能仍然無法識別JAVA_HOME等,在catalina.sh添加JAVA_HOME等變量
sudo echo -e "\n\n# Java \n\
JAVA_HOME=/usr/local/java/jdk1.8.0_171 \n\
JRE_HOME=/usr/local/java/jdk1.8.0_171/jre \n" >> /usr/local/tomcat/apache-tomcat-8.5.31/bin/catalina.sh
# 設置開機啓動
# 輸入root密碼
systemctl enable tomcat.service
# 開啓tomcat服務
systemctl start tomcat.service
# 8.把war文件複製到webapps目錄下
cp *.war /usr/local/tomcat/apache-tomcat-8.5.31/webapps
開機啓動配置文件,命名爲tomcat.service,和腳本放在同一目錄下
[Unit]
Description=tomcat
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/tomcat/apache-tomcat-8.5.31/bin/startup.sh //自已的tomcat目錄
ExecStop=/usr/tomcat/apache-tomcat-8.5.31/bin/stutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target