1. 程式人生 > 其它 >Springboot 專案在虛擬機器中的部署

Springboot 專案在虛擬機器中的部署

1、centos7 網路環境配置

  • 虛擬機器網路設定裡選擇NAT模式
  • 點選編輯 -> 虛擬網路編輯器
  • 注意子網的ip設定
  • 點選NET設定,進行閘道器設定
  • vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=2ca7047c-59fb-478a-b2fd-c5cf71b944dc
DEVICE=ens33
ONBOOT=yes
GATEWAY="192.168.243.2"
IPADDR="192.168.243.129"
#NETMASK=255.255.255.0
PREFIX=24
DNS="8.8.8.8"
  • vi /etc/resolv.conf
nameserver 8.8.8.8
  • vi /etc/sysconfig/network
# Created by anaconda
NETWORKING=yes
HOSTNAME=centos7
GATEWAY=192.168.243.2
  • 輸入 service network restart
  • 最後輸入 reboot


2、安裝jdk環境

  • 下載 linux jdk 壓縮包
連結:https://pan.baidu.com/s/1bxbcnQlx0ijor7HytAuGYA 
提取碼:yyds 
  • mkdir -p /usr/local/src/jdk 建立目錄
  • 使用 filezilla 把下載好的壓縮包放到 jdk 目錄下
  • tar -zxvf /usr/local/jdk/jdk-8u211-linux-x64.tar.gz 解壓至當前目錄
  • 改個名字 mv jdk1.8.0_211 jdk1.8

  • 配置環境變數 vi /etc/profile 在檔案末尾追加

export JAVA_HOME=/usr/local/src/jdk/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}:/usr/bin:/bin:/sbin:/usr/sbin
  • 執行profile檔案 source /etc/profile

  • 測試 java 環境安裝 java -version



3、編寫springboot服務

  • 新建一個普通springboot專案
  • 編寫一個簡單的controller
@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String test(){
        return "hello";
    }
}
  • 在application.properties中配置埠號
server.port=8080
  • 啟動專案測試


4、專案釋出到linux虛擬機器中

  • 使用maven install 打jar包
  • 將jar包傳到linux中

  • 建立 nohup.out日誌檔案, 用於輸出專案啟動的日誌輸出

  • 讓jar包在後臺執行
//nohup 意思是不掛斷執行命令,當賬戶退出或終端關閉時,程式仍然執行
//當用 nohup 命令執行作業時,預設情況下該作業的所有輸出被重定向到nohup.out的檔案中
//除非另外指定了輸出檔案。
nohup java -jar SpringBootProgram-0.0.1-SNAPSHOT.jar &
  • 檢視nohup.out 檔案
//-f 迴圈讀取
//-n<行數> 顯示檔案的尾部 n 行內容
tail -fn 10000 nohup.out     -- 檢視檔案
  • 防火牆相關命令
啟動: systemctl start firewalld
關閉: systemctl stop firewalld
檢視狀態: systemctl status firewalld 
開機禁用: systemctl disable firewalld
開機啟用: systemctl enable firewalld
  • 開啟一個埠
//新增
firewall-cmd --zone=public --add-port=8080/tcp --permanent  
//新增埠外部訪問許可權
firewall-cmd --add-port=8080/tcp
//重新載入,新增埠後重新載入才能起作用
firewall-cmd --reload
  • 檢視和刪除埠
//檢視埠
firewall-cmd --zone=public --query-port=8080/tcp
//刪除埠
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
  • 終止jar包執行
ps -ef | grep java
kill pid