部署Springboot應用作爲系統服務啓動(Windows和Linux)

Springboot應用配置(Linux系統使用,windows可以不配置):

需要在build.gradle中添加如下配置並打成jar包:

springBoot {

executable = true

}


一、UBUNTU 16.04 LTS

1、可執行應用路徑:
/var/local/javaapproot/yfzx/current/yfzxservice.jar
2、向/etc/init.d/下創建服務鏈接

sudo ln -s /var/local/javaapproot/yfzx/current/yfzxservice.jar  /etc/init.d/yfzxservice

3、激活服務並開機自啓(NN爲自啓順序編號,例如90,也可以不寫)

sudo update-rc.d yfzxservice defaults NN

在Ubuntu中是沒有chkconfig命令的,可以用update-rc.d 來代替。
--------說明---------
# update-rc.d sshd defaults # Activate sshd with the default runlevels
# update-rc.d sshd start 20 2 3 4 5 . stop 20 0 1 6 . # With explicit arguments
# update-rc.d -f sshd remove # Disable sshd for all runlevels 刪除服務
# shutdown -h now (or # poweroff) # Shutdown and halt the system

 

二、Windows 服務

Spring Boot應用程序可以作爲Windows服務使用啓動 winsw

 

下載WinSW

下載WinSW 2.x,  GitHub :https://github.com/kohsuke/winsw

使用方式:

WinSW是一個可執行的二進制文件,可用於將自定義進程打包並管理爲Windows服務。一旦你下載安裝包,你可以重新命名winsw.exe爲任何名稱,例如myService.exe

WinSW 依賴配置文件啓動: Main XML Configuration file and EXE Config file.

更改 winsw.exe 名稱爲將要註冊的應用服務名稱, 同時將同一目錄層級的xml配置文件名稱保持與winsw.exe新名稱一致。

在執行winsw.exe命令或重命名的winsw.exe時,可以追加下列命令:

  • install 將服務安裝到Windows服務控制器。該命令需要安裝指南中描述的一些初步步驟。
  • uninstall 卸載服務。上面的操作相反。
  • start 開始服務。該服務必須已經安裝。
  • stop  停止服務。
  • restart 重新啓動服務。如果服務當前沒有運行,則該命令的作用就像start
  • status  檢查服務的當前狀態。
    • 這個命令打印一行到控制檯。
      • NonExistent 表示該服務目前尚未安裝
      • Started 以表明服務正在運行
      • Stopped 以表明該服務已安裝,但目前尚未運行。

 

註冊服務案例:

1、下載winsw後,安裝 .net framework4

2、將winsw.exe更名爲YfzxService.exe(需要註冊的應用服務名稱),

3、將winsw.exe配套的xml文件的名稱改爲YfzxService.xml。xml文件需要與YfzxService.exe在同一層級目錄

配置文件內容格式(相對路徑):

<configuration>
  <!-- 系統服務ID,不能與其他系統服務名稱重複-->
  <id>yfzxservice</id>
  <!-- 系統服務顯示名稱 -->
  <name>YfzxService (powered by WinSW)</name>
  <!-- 服務描述 -->
  <description>Yfzx Service</description>
  <!-- java環境變量 -->
  <env name="JAVA_HOME" value="%JAVA_HOME%"/>
  <!-- 需要執行的應用 命令 -->
  <executable>java</executable>  
  <!-- 命令參數,分行可以用多行'argument'標記 -->
  <arguments>-jar %BASE%\current\yfzxservice.jar</arguments>
</configuration>

3、將winsw及配置文件放在應用目錄

實例中jar包存放位置:D:\javaroot\yfzx\current\yfzxservice.jar

winsw.exe存放位置:D:\javaroot\yfzx\YfzxService.exe (winsw已變更名稱爲:YfzxService.exe)

winsw.exe配置文件存放文件位置:D:\javaroot\yfzx\YfzxService.xml

結構如下:



4、安裝服務

管理員模式打開CMD窗口,導航到D:\javaroot\yfzx\

D:\javaroot\yfzx>YfzxService.exe install

2018-01-30 16:27:11,122 INFO  - Installing the service with id 'yfzxservice'

5、啓動服務

D:\javaroot\yfzx>net start yfzxservice
YfzxService (powered by WinSW) 服務正在啓動 .
YfzxService (powered by WinSW) 服務已經啓動成功

然後便可以在服務管理面板中查看到此服務



在瀏覽器中輸入地址便可以訪問了


Tips:

Windows所需的工具及軟件已上傳至:http://download.csdn.net/download/fancancan/10232761

需要的同學可以去下載,或者可以去上面提到的官方網站上去下載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章