1. 程式人生 > 實用技巧 >centos7 安裝tomcat

centos7 安裝tomcat

------------恢復內容開始------------

1,下載tomcat安裝包

https://mirrors.cnnic.cn/apache/tomcat/

我下載的版本

https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.57/bin/apache-tomcat-8.5.57.tar.gz

2,解壓檔案,

tar -zxvfapache-tomcat-8.5.57.tar.gz

mvapache-tomcat-8.5.57 /usr/local/tomcat

3,啟動tomcat

在tomcat/bin 目錄下 有startup.sh 和shutdown.sh

startup.sh 是開啟tomcat

shutdown.sh 是關閉tomcat

在bin目錄下 執行

./startup.sh

4,開放8080 埠

通過修改配置檔案或者命令都可以,我的centos7直接用命令就行

systemctl start firewalld  # 啟動friewall

systemctl status firewalld # 檢視firewall啟動情況

firewall-cmd --zone=public --add-port=8080/tcp --permanent   # 開啟8080埠

firewall-cmd --reload #重啟 

firewall-cmd --query-port=8080/tcp 檢視8080埠是否開啟

5,登陸 http://ip:8080 看能否連線上

我的是http://192.168.0.233:8080

6,給tomcat設定使用者名稱和密碼

在tomcat/conf下有一個檔案叫tomcat-user.xml

在tomcat-user 標籤前新增

<role rolename="admin-gui"/>     

<role rolename="manager-gui"/>     

<user username="tomcat" password="admin" roles="manager-gui,admin-gui"/>

如果點選manager app 之類的還報403錯誤

則去tomcat/webapps/manager/META-INF/目錄下context.xml檔案

將原本的資料註釋掉或修改為

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />

重啟tomcat

7,新增tomcat為系統服務,可以開機自啟

*在tomcat目錄下信建tomcat.pid檔案,與bin目錄平級

*在tomcat/bin目錄下新建setenv.sh配置,catalina.sh啟動的時候會呼叫,同時配置Java記憶體引數。配置一下程式碼

  1. #addtomcatpid
  2. CATALINA_PID="$CATALINA_BASE/tomcat.pid"
  3. #addjavaopts
  4. JAVA_OPTS="-server-XX:PermSize=256M-XX:MaxPermSize=1024m-Xms512M-Xmx1024M-XX:MaxNewSize=256m"

*在/usr/lib/systemd/system目錄下信建tomcat.service 檔案,配置一下程式碼,注意java的路徑

  1. [Unit]
  2. Description=Tomcat
  3. After=syslog.target network.target remote-fs.target nss-lookup.target
  4. [Service]
  5. Type=forking
  6. Environment="JAVA_HOME=/usr/java/jdk1.8.0_202"
  7. PIDFile=/usr/local/tomcat/tomcat.pid
  8. ExecStart=/usr/local/tomcat/bin/startup.sh
  9. ExecReload=/bin/kill -s HUP $MAINPID
  10. ExecStop=/bin/kill -s QUIT $MAINPID
  11. PrivateTmp=true
  12. [Install]
  13. WantedBy=multi-user.target

配置開機啟動

systemctl enable tomcat

啟動tomcat
systemctl start tomcat
停止tomcat
systemctl stop tomcat
重啟tomcat
systemctl restart tomcat

因為配置pid,在啟動的時候會再tomcat根目錄生成tomcat.pid檔案,停止之後刪除。

同時tomcat在啟動時候,執行start不會啟動兩個tomcat,保證始終只有一個tomcat服務在執行。

多個tomcat可以配置在多個目錄下,互不影響。

修改tomcat.service檔案後需要執行下面命令使其生效:
systemctl daemon-reload 查詢tomcat 程序 ps -ef | grep "tomcat"| grep -v grep 如果多個tomcat,則拷貝到不同的目錄,使用不同的埠。tomcat.service檔名不同即可。 例如:tomcat1.servicetomcat2.servicetomcat3.service