1、下載Apache tomcat
在左邊,可以選擇下載各種版本的tomcat。根據服務器操作系統選擇下載。Linux操作系統就下載tar.gz包。
我下載的文件名是:apache-tomcat-8.5.37.tar.gz
2、檢查linux是否安裝tomcat
輸入rpm -qa|grep tomcat
查看下系統信息,確認是32位還是64位:uname -a
3、上傳服務器、解壓縮tomcat
使用WinSCP或者Xftp等工具將tar.gz壓縮包上傳到 /usr/local 目錄中,以下操作命令都需要在root賬戶下操作。
進入目錄解壓安裝包
進入目錄:cd /usr/local
解壓文件:
tar -zxvf apache-tomcat-8.5.37.tar.gz
將目錄 apache-tomcat-8.5.37 重命名為 tomcat,方便一些
重命名文件:
mv apache-tomcat-8.5.37 tomcat8
4、配置環境變量
輸入:vim /etc/profile 打開配置文件,按 i 進入編輯模式,在profile文件尾部 unset -f pathmunge 后面添加如下內容:
unset i unset -f pathmunge export JAVA_HOME=/usr/local/java/jdk1.8.0_221 export JRE_HOME=${JAVA_HOME}/jre export CATALINA_HOME=/usr/local/tomcat8 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${CATALINA_HOME}/bin export PATH=$PATH:${JAVA_PATH}:$PATH
編輯完之后,按Esc 並輸入 :wq(小寫) 保存並退出編輯,然后輸入以下指令:source /etc/profile 刷新環境配置使profile文件立即生效
5、正常啟動
運行 /usr/local/tomcat8/bin/startup.sh 就會啟動tomcat,在瀏覽器中訪問http://localhost:8080了,能看到如下界面,說明訪問成功。
6、正常關閉
運行 /usr/local/tomcat8/bin/shutdown.sh 就會關閉tomcat
7、修改tomcat配置
進入 /usr/local/tomcat8/conf 目錄修改server.xml中的tomcat端口
運行 vim server.xml,用“/8080”定位到8080端口。如下圖:
可以修改端口,默認8080,然后按ESC鍵,然后按 :wq(注意有一個英文冒號),保存並退出。
8、在不同Linux系統中,操作指令會有細微的差別,Centos6防火牆相關命令:
service iptables status 查看防火牆狀態
service iptables start 開啟防火牆
service iptables stop 關閉防火牆
service iptables restart 重啟防火牆
對於Centos7系統來說,只有使用下面的指令,才可以對Linux防火牆進行啟停。
查看防火牆開放端口列表命令:firewall-cmd --zone=public --list-ports 開啟防火牆8080端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent 關閉防火牆命令:systemctl stop firewalld.service 禁止防火牆開機啟動命令:systemctl disable firewalld.service 重新加載防火牆命令:firewall-cmd --reload
9、其他一些問題
啟動以后,可以利用命令 ps -ef|grep tomcat 查看tomcat是否正常啟動。
如果正常啟動以后無法訪問,可以先不修改8080端口,嘗試用8080端口訪問。如果可以通過8080端口正常訪問,則說明80端口被其他應用占用。
或者使用 netstat -an|grep 8080 命令查看是否有程序占用8080端口。
10、設置tomcat開機自啟
在 tomcat/bin 目錄下面,增加 setenv.sh 配置,服務啟動的時候會調用,同時配置java內存參數。
輸入命令編輯:
vim /usr/local/tomcat/bin/setenv.sh
#add tomcat pid CATALINA_PID="$CATALINA_BASE/tomcat.pid" #add java opts JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
增加tomcat.service,在/usr/lib/systemd/system目錄下增加 tomcat.service
輸入命令編輯:
vi /usr/lib/systemd/system/tomcat.service
[Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment='JAVA_HOME=/usr/local/java/jdk1.8.0_221/' Environment='CATALINA_PID=/usr/local/tomcat/tomcat.pid' Environment='CATALINA_HOME=/usr/local/tomcat/' Environment='CATALINA_BASE=/usr/local/tomcat/' Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' PIDFile=/usr/local/tomcat/tomcat.pid ExecStart=/usr/local/tomcat/bin/startup.sh ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
[unit]配置了服務的描述,規定了在network啟動之后執行。
[service]配置了環境變量,JAVA_HOME,服務的pid,服務的啟動,停止,重啟,內存參數。
[install]配置了使用用戶。
當需要啟動多個tomcat時,復制多個tomcat安裝文件在/usr/local/下,如/usr/local/tomcat2,並配置多個tomcat.service 如tomcat2.service,tomcat3.service 在配置中修改對應的路徑即可。
因為配置pid,在啟動的時候會在tomcat根目錄生成tomcat.pid文件,停止之后刪除。
同時tomcat在啟動時候,執行start不會啟動兩個tomcat,保證始終只有一個tomcat服務在運行。
多個tomcat可以配置在多個目錄下,使用不同的端口,互不影響。
設置開機自啟
systemctl enable tomcat.service
啟動 tomcat
systemctl start tomcat.service
systemctl 常用命令
其中.service 可以省略
查看全部服務命令:
systemctl list-unit-files --type service
查看服務:
systemctl status name.service
增加開機啟動:
systemctl enable name.service
啟動服務:
systemctl start name.service
停止服務:
systemctl stop name.service
重啟服務:
systemctl restart name.service
刪除開機啟動:
systemctl disable name.service