Spring boot部署CentOS7

目標

把Spring boot的jar部署到CentOS7上面,而且隨CentOS7隨機啓動。php

Spring boot Jar

bootJar {
    launchScript()
}

而後,直接使用以下命令,進行構建:html

# 清理已經構建可執行jar
./gradlew clean
# 從新構建可執行jar
./gradlew build
# 驗證spring boot jar是否有效
 ./build/libs/xxx-1.0-SNAPSHOT.jar

建立用戶

sudo useradd --system --home /var/myapp --shell /sbin/nologin --comment "myapp user" --user-group myapp

受權文件夾

chown -R nginx /var/myapp
chgrp -R nginx /var/myapp

systemd

myapp.service

/etc/systemd/system/myapp.servicelinux

[Unit]
Description=myapp
After=syslog.target

[Service]
User=myapp
Group=myapp
ExecStart=/var/myapp/myapp.jar
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

上面就是systemd的配置文件。其中ExecStart表示執行的spring boot的jar的路徑。systemctl的日誌須要使用journalctl來查看,簡單使用以下:nginx

journalctl -u myapp.service -f

運行

上傳Spring boot的jar到/var/myapp/目錄,使用以下命令:spring

# 修改jar文件執行權限
chmod 755 /var/myapp/myapp.jar
# 設置myapp服務爲隨機啓動
systemctl enable myapp.service
# 啓動服務
systemctl start myapp.service
# 查看服務
systemctl status myapp.service

firewall

# 把myapp服務暴露在外面,主要就是開放myapp使用的端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重啓firewall
firewall-cmd --reload

驗證

能夠直接經過外部chrome瀏覽器訪問該服務是否有效。chrome

參考

相關文章
相關標籤/搜索