1. 程式人生 > 其它 >前端專案自動化部署

前端專案自動化部署

應用場景

通常情況下,專案需要部署上下通常採用下面幾種方式
以Vue專案為例,打包之後

  1. 利用指令/工具,利用Scp命令列或FTP將dist目錄中的檔案上傳至伺服器Web環境根目錄下。
  2. 利用git伺服器,ssh進入web伺服器 -> 執行git clone或git pull將專案克隆至伺服器 -> 執行npm install -> 執行npm run build。

以上兩種方式都不是最優解,第一種方式操作步驟繁瑣;第二種伺服器需要安裝node&git環境,並且多了專案原始碼,浪費伺服器資源

實現自動化部署

僅需一個指令,實現自動化部署

  1. 在專案中下載依賴

scp2是一個純js編寫的ssh2協議的Linux遠端檔案拷貝實現。 ora是一個優雅的用於命令列Loading的spinner

npm install scp2 ora --save-dev
  1. 根目錄新建:deploy.js(ora部分可有可無,不用可隱去
const scpClient = require('scp2')
const ora = require('ora')
const server = {
    host:'xxx.xxx.xxx.xxx',//伺服器IP
    port:22,//伺服器埠
    username:'xxxxxx',//伺服器ssh登入使用者名稱
    password:'xxxxxx',//伺服器ssh登入密碼
    path:'/www/xxxx/xxxx'//伺服器web目錄
}
const loading = ora('正在部署至 ' + server.host )
loading.start()
scpClient.scp('dist/', server ,(err)=>{
loading.stop()
    if(err) {
        console.log('部署失敗')
        throw err
    }else {
        console.log('部署成功')
    }
})
  1. 在package.json中的script中新增命令
"scripts": {
    ...
    "deploy": "npm run build && node ./deploy.js",
    ...
},

資源分享,電影百年,名人千萬,佳作無數!
每天一分鐘,知曉天下事!
各種實用工具、關注時事熱點、體育以及娛樂八卦等有關的資訊~