本文由寶塔教學專欄為大家介紹寶塔面板怎麼部署egg web項目,希望對需要的你有幫助!
寶塔部署egg web專案
需要本地存取遠端資料庫注意:
1、阿里雲設定安全群組
2、寶塔安裝「系統防火牆2.9」=> 設定放行埠
如:7002用於存取mongodb,7001用於存取api
資料庫連線最簡單的測試辦法: 就是直接在瀏覽器存取你的網域:連接埠或用伺服器ip:連接埠,如果你用的是網域的話注意網域需要解析綁定IP,可以看到瀏覽器提示如下即可:
3、本機mongoDB遷移到線上/資料庫初始化腳本
#初始化資料庫:app.js##
app.beforeStart(async () => { const ctx = app.createAnonymousContext(); const model = ctx.model; const existGroup = await model.UserGroup.findOne({name: '超级管理员'}) if(!existGroup){ const group = await model.UserGroup.create({ "name" : "普通管理员", "idName" : "admin", "role" : 100 }); } console.log("==app beforeStart=="); });##4 、egg運行配置
一、新增網站,上傳專案(如果程式碼有放在遠端倉庫託管建議直接在網站目錄下開啟終端面板進行git clone)
注意:在上傳項目時把node_modules檔案刪除再上傳,這樣會快很多,然後找到左側「檔案」=>「終端」(收藏旁邊),打開輸入密碼連線(或使用伺服器的終端機);輸入命令列:cd /www/wwwroot/專案目錄,然後重新npm install。這樣可以一定程度上避免專案無法啟動的尷尬。
二、進程管理:(待驗證!)
可以建立index.js 來啟動egg服務
方法1,egg內建進程管理器,可以直接專案目錄下執行指令: node index.js index.js程式碼:
const egg = require('egg'); const workers = Number(process.argv[2] || require('os').cpus().length); egg.startCluster({ workers, baseDir: __dirname, });
方法2,安裝PM2進行node進程管理,選擇好檔案後點選「新增」
注意: 設定完發現前端可以訪問但是api不能訪問,注意看是不是端口佔用問題
查看所有端口的佔用情況,輸入命令:`netstat -ano`,使用命令`pkill node` 批量殺死進程
三、新增反向代理,代理到egg專案的運行連接埠
5、前端專案打包後放在egg的靜態目錄,並在config/config.default.js 裡配置好(也可另起一個項目)config.static = {
prefix: '/',
dir: [
path.join(__dirname, '../app/public'), //上传文件等的目录
path.join(__dirname, '../dist') //放置前端打包后的文件
]}
然後再router.js裡加一個重定向,把非api的請求重定向到index.html,顯示前端的頁面
app.router.redirect('/', '/index.html', 302);6.程式碼同步(使用git)
(假设本地已有git并且提交到远程)
1、在宝塔面板,项目路径下打开终端:
2、方法一、文件未提交则直接git clone [url]
方法二、如果文件已提交,
初始化:
git init
设置远程仓库地址:
git remote origin set-url [url] 或 git remote add origin [url]
设置用户名:
git config --global user.name [用户名]
git config --global user.email [邮箱]
想要只在当前项目下设置的话把--global去掉
如本地有文件,先执行:
git add .
git commit -m "init"
git push -u origin master
拉取:
git config --global credential.helper store //让git记住用户名密码,下次不用填
git pull //输入用户名密码 拉取远程代码便可
以上是寶塔面板部署egg+web專案(附詳細步驟)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Dreamweaver Mac版
視覺化網頁開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。