CentOS 7 中配置通過 daemon 模式啟動的 Tomcat 8 服務

来源:http://www.cnblogs.com/xyzx0326/archive/2016/04/08/5367797.html
-Advertisement-
Play Games

距離上次折騰已經有很長一段時間了。。。 不說這個,剛好有空閑,把這兩天折騰的 Tomcat 8 的服務配置整理出來收錄一下。 1、JDK安裝 1)檢查伺服器是否預裝了 openJdk,如果有就刪除,在這裡因為我的系統里沒有所以不多贅述。 2)到 oracle 的官網下載 JDK 安裝包,這裡我使用的 ...



距離上次折騰已經有很長一段時間了。。。

不說這個,剛好有空閑,把這兩天折騰的 Tomcat 8 的服務配置整理出來收錄一下。

 

1、JDK安裝

1)檢查伺服器是否預裝了 openJdk,如果有就刪除,在這裡因為我的系統里沒有所以不多贅述。

2)到 oracle 的官網下載 JDK 安裝包,這裡我使用的是 jdk1.8.0_73,官網下載 jdk-8u73-linux-x64.rpm 並上傳到伺服器。

3)到安裝包目錄下執行命令

rpm -ivh jdk-8u73-linux-x64.rpm

4)運行命令查看是否安裝成功

java -version

顯示 java 版本信息,安裝成功

java version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

 

2、Tomcat8 配置

1)下載 Tomcat 8 並上傳到伺服器,這裡我下載的是 apache-tomcat-8.0.32.tar.gz 版本

2)配置單獨用戶 tomcat 運行 Tomcat8 服務,這這裡配置的 tomcat 是無登錄許可權的賬戶

groupadd tomcat
useradd -s /sbin/nologin -g tomcat tomcat
usermod -L tomcat

3)解壓 Tomcat 8 並複製到 tomcat 用戶目錄下

tar -zxv -f apache-tomcat-8.0.32.tar.gz 
rm -rf apache-tomcat-8.0.32.tar.gz 
mv apache-tomcat-8.0.32 tomcat
mv tomcat/ /home/tomcat/

4)授權目錄許可權給 tomcat 用戶

chown -R tomcat:tomcat /home/tomcat/tomcat

5)在 Tomcat 8 的 bin 目錄下添加啟動配置 setenv.sh 文件

cd /home/tomcat/tomcat/bin
vi setenv.sh

setenv.sh 文件的相關內容如下

#add tomcat pid
CATALINA_PID="/var/run/tomcat.pid"
#add JAVA_HOME
JAVA_HOME=/usr/java/default
#add JAVA_OPTS
JAVA_OPTS="-server -Xms256M -Xmx512M -XX:MaxNewSize=256m"

6)編譯安裝 jsvc,jsvc 是 daemon 模式用來啟動 Tomcat 8 的程式,通過C語言編譯,可以在普通用戶下打開 80 埠

cd /home/tomcat/tomcat/bin
tar -zxvf commons-daemon-native.tar.gz 
cd commons-daemon-1.0.15-native-src/
./configure --with-java=/usr/java/default
make
cp jsvc ../..

7)配置 Tomcat 8 為 systemctl 服務,在 /usr/lib/systemd/system 下創建文件 tomcat.service

cd /usr/lib/systemd/system
vi tomcat.service

tomcat.service 的內容如下

[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/tomcat.pid
ExecStart=/home/tomcat/tomcat/bin/daemon.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID

PrivateTmp=true

[Install]
WantedBy=multi-user.target


至此,全部配置基本完成

設置開機啟動的命令

systemctl enable tomcat

啟動服務

systemctl start tomcat

重啟服務

systemctl restart tomcat

停止服務

systemctl stop tomcat

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 現在很多的app裡面都添加了應用內購買,網上關於蘋果證書的生成和設置的教程比較多,這裡就不多贅述了,推薦幾個個人覺得說的比較詳細的網址: http://www.jianshu.com/p/86ac7d3b593a http://blog.csdn.net/shenjie12345678/articl ...
  • 今天不聊技術,就聊一下最近遇到的android的煩心事 其實大家學技術的可能都會遇到這樣的事,入門學習語法很簡單,但是中間部分是很難的,我們需要學習的東西很多,比如說很難搞的組件啊或者類啊, 但是到後面學會以後就會很簡單,覺得沒什麼。主要就是學習的過程很苦逼,今天看的content provider ...
  • 逆天最近在弄一個本地和伺服器自動同步的東西,每天都會添加很多新數據,本地和伺服器同樣的ShopMenu表,我總不能每次都把伺服器的清掉然後再把本地的導入進去吧~ 可能有人說~直接插伺服器的資料庫不就可以了嗎? 可惜==》 本地的數據測試通過後才允許同步到伺服器中 可能又有人說~設置一個 所以就有了以 ...
  • 下麵的是MySQL安裝的圖解,用的可執行文件:下載地址:http://www.jinhusns.com/Products/Download/?type=xcj相關下載 mysql安裝嚮導啟動,按“Next”繼續 選擇安裝類型,有“Typical(預設)”、“Complete(完全)”、“Custom ...
  • 環境:centos7+oracle 11gr2 公網:固定IP 癥狀:1521埠正常,netmanager配置測試正常,plsql連接提示ORA-12514: TNS:listener does not currently know of service requested in connect ... ...
  • 編寫mongo查詢語句到 find.js 然後mongo ip/dbname find.js > result.txt 採用標準輸出的形式重定向到文件 result.txt 中 上面用到了 正則匹配,採用 /.*關鍵詞.* /的形式進行模糊查詢 ...
  • 在測試ORACLE 10.2.0.4升級到10.2.0.5 Patch Set的過程中,遇到一個內核參數檢查失敗的問題,具體錯誤信息如下所示 實驗環境: 操作系統:Oracle Linux Server release 5.7 記憶體:4G 資料庫版本:10.2.0.4.0 Checking oper... ...
  • 1、下載安裝redis 在linux伺服器上,命令行執行以下命令(cd ./usr local/src 一般源碼放在這裡(推薦源碼安裝)) 說明: wget:下載遠程文件到本地當前文件夾中。 tar xzf :解壓文件到當前文件夾目錄 cd:進入文件夾 make make all make inst ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...