亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

十分鐘搭建centos+nodejs+nestjs+caddy+pm2線上環(huán)境

xiaoqibTn / 1668人閱讀

摘要:安裝及線上環(huán)境配置安裝官方安裝說明地址執(zhí)行命令至此,安裝完成版本查看安裝官方文檔地址首次安裝執(zhí)行命令以后創(chuàng)建項目只需在你需要的路徑下執(zhí)行開發(fā)測試環(huán)境下直接執(zhí)行以下命令啟動項目后面加上可以在修改現(xiàn)有文件后自動進(jìn)行重啟瀏覽器輸入即可

centos+node.js+nest.js+caddy+pm2安裝及線上環(huán)境配置

node.js安裝

官方安裝說明地址 https://github.com/nodesource...

執(zhí)行命令

curl -sL https://rpm.nodesource.com/setup_8.x | bash -
sudo yum install -y nodejs

至此,noded.js安裝完成

版本查看

node -v
npm -v
nest.js安裝

官方文檔地址 https://github.com/nestcn/doc...

首次安裝執(zhí)行命令

npm i -g @nestjs/cli

以后創(chuàng)建項目只需在你需要的路徑下執(zhí)行

nest new project

開發(fā)測試環(huán)境下直接執(zhí)行以下命令啟動項目,start后面加上:dev可以在修改現(xiàn)有文件后自動進(jìn)行重啟

npm run start:dev

瀏覽器輸入 localhost:3000 即可訪問,端口修改在src/manin.ts中

由于node.js環(huán)境下,每個項目啟動都需要占用一個端口,所以要想實現(xiàn)多站點(diǎn),多域名綁定訪問就需要使用nginx,caddy之類的web service來做代理這里我們選用簡單強(qiáng)大的caddy來實現(xiàn)

安裝caddy

官方文檔地址 https://caddyserver.com/tutorial

在 https://caddyserver.com/download 頁面中根據(jù)自己服務(wù)器和所需插件勾選后會生成安裝命令

無需插件情況下,直接執(zhí)行下面的命令即可

curl https://getcaddy.com | bash -s personal

安裝完成后如果是靜態(tài)網(wǎng)站可以直接在網(wǎng)站根目錄執(zhí)行以下命令即可啟動

caddy

瀏覽器輸入 localhost:2015 即可訪問

下面主要針對nest.js項目多站點(diǎn)的情況進(jìn)行配置說明

在你希望的路徑下創(chuàng)建 一個 Caddyfile 文件

vi Caddyfile

配置內(nèi)容示例如下

比如你的域名是 www.google.com ,你需要通過該域名訪問你的 localhost:6000 這個項目,同理,其它項目同樣配置

www.google.com {
    proxy / localhost:6000
}

www.facebook.com {
    proxy / localhost:6001
}

注意:在上面的配置中切記 "{" 和 "/" 左右的空格,否則將會引起錯誤

配置完以后按 esc 鍵再輸入 :wq 保存退出

然后執(zhí)行以下名來來告訴 caddy 你的配置文件在哪,并加載啟動

caddy -conf /路徑/Caddyfile

這時可能會讓你輸入郵箱地址,這是caddy為了給你自動申請配置SSL證書,然后你會看到輸出了你配置的域名,
分別有http和https的地址,直接訪問即可

以上配置完基本就完成了;但是放你重啟服務(wù)器后就會發(fā)現(xiàn)網(wǎng)站不能訪問了,服務(wù)器上查看你會發(fā)現(xiàn)node.js的web server 和 caddy 都沒有自動啟動,還需要手動執(zhí)行上面步驟中的啟動命令才行,這時就需要使用pm2這個強(qiáng)大的工具了

安裝pm2

官方文檔地址 https://pm2.io/doc/zh/runtime...

執(zhí)行以下命令開始安裝

npm install pm2 -g

一個命令安裝完成,是不是很簡單?

下面使用pm2來啟動管理node.js運(yùn)行的項目,這里以nest.js開發(fā)的項目為例,這部分由于資料有限,找不到pm2啟動nest.js項目的說明,由于我自己也是初次接觸pm2,整整折騰了8個小時才搞定,最后google找到了解決方案,如下:

比如你的nest.js項目路徑是 cd /data/www/project01 則進(jìn)入該項目根目錄下執(zhí)行以下命令

 pm2 start npm --name project01 -- start

執(zhí)行完會出現(xiàn)一個名為project01的項目online的table,表示該項目通過pm2啟動成功,如果你還有其它項目可執(zhí)行同樣的操作來啟動

將你需要通過pm2來啟動管理的項目都通過pm2啟動后,執(zhí)行以下開機(jī)自啟動命令來實現(xiàn)開機(jī)自啟動這些項目

pm2 startup

執(zhí)行以下命令來保存當(dāng)前應(yīng)用列表

pm2 save 

到此,通過pm2來啟動管理的項目在服務(wù)器重啟后都會自動啟動,是不是很方便?
但是還有個問題,因為這些項目都使用了caddy代理,所以caddy也需要實現(xiàn)開機(jī)自啟動才行,否則外網(wǎng)仍然無法通過你的域名來訪問這些項目,由于我們已經(jīng)安裝了pm2,他方便強(qiáng)大的特性可以免去我們?nèi)ヅ渲胹ystemd來實現(xiàn)caddy的開機(jī)自啟動了,我們執(zhí)行以下命令

pm2 start caddy --name caddyStart -- -conf /你的Caddyfile路徑/Caddyfile

通過以上命令我們就實現(xiàn)了pm2啟動管理caddy了,然后我們依然要執(zhí)行一下開機(jī)自啟動命令和保存命令,如下

pm2 startup 

pm2 save 

重啟你的服務(wù)器,你會發(fā)現(xiàn)在沒經(jīng)過任何手動操作的情況下你已經(jīng)可以通過項目所綁定的域名來訪問你的網(wǎng)站了,是不是很爽?

到此所有配置操作全部完成! 你可以通過強(qiáng)大的pm2來監(jiān)測你服務(wù)器上的項目

pm2常用的命令
$ pm2 list               # 顯示所有進(jìn)程狀態(tài)
$ pm2 monit              # 監(jiān)視所有進(jìn)程
$ pm2 logs               # 顯示所有進(jìn)程日志
$ pm2 stop all           # 停止所有進(jìn)程
$ pm2 restart all        # 重啟所有進(jìn)程
$ pm2 reload all         # 0 秒停機(jī)重載進(jìn)程 (用于 NETWORKED 進(jìn)程)
$ pm2 stop 0             # 停止指定的進(jìn)程
$ pm2 restart 0          # 重啟指定的進(jìn)程
$ pm2 startup            # 產(chǎn)生 init 腳本 保持進(jìn)程活著
$ pm2 web                # 運(yùn)行健壯的 computer API endpoint (http://localhost:9615)
$ pm2 delete 0           # 殺死指定的進(jìn)程
$ pm2 delete all         # 殺死全部進(jìn)程

有喜歡kotlin的同學(xué)加下QQ群 26588774
有喜歡nodejs+koa2的同學(xué)加下QQ群 732189938
有喜歡golang的同學(xué)加下QQ群 598189791
有喜歡laravel的同學(xué)加下QQ群 212423075

歡迎來群里聊美女,談人生,當(dāng)然還有聊技術(shù)O(∩_∩)O

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/96268.html

相關(guān)文章

  • 阿里云服務(wù)器部署 nodejs + mongodb + nginx 反向代理 + https配置 s

    摘要:感謝老師,老師的慕課網(wǎng)教程購買阿里云服務(wù)器及域名終端連接阿里云服務(wù)器環(huán)境輸入密碼購買時的密碼如果出現(xiàn)這個問題的解決方案解決方法查看硬盤掛在情況如果有數(shù)據(jù)盤的情況下查看硬盤使用情況通過設(shè)置快捷登錄權(quán)限,可以增加幾個擁有權(quán)限的用戶下查 感謝 Scott 老師,Scott老師的慕課網(wǎng)教程 https://coding.imooc.com/clas... 1. 購買阿里云服務(wù)器及域名 2. ...

    張春雷 評論0 收藏0
  • 阿里云服務(wù)器部署 nodejs + mongodb + nginx 反向代理 + https配置 s

    摘要:感謝老師,老師的慕課網(wǎng)教程購買阿里云服務(wù)器及域名終端連接阿里云服務(wù)器環(huán)境輸入密碼購買時的密碼如果出現(xiàn)這個問題的解決方案解決方法查看硬盤掛在情況如果有數(shù)據(jù)盤的情況下查看硬盤使用情況通過設(shè)置快捷登錄權(quán)限,可以增加幾個擁有權(quán)限的用戶下查 感謝 Scott 老師,Scott老師的慕課網(wǎng)教程 https://coding.imooc.com/clas... 1. 購買阿里云服務(wù)器及域名 2. ...

    jerryloveemily 評論0 收藏0
  • 使用 Laradock 10 分鐘部署 Laravel 或 Notadd 環(huán)境

    摘要:為什么使用部署快只需要幾分鐘,就能部署好一套環(huán)境性能好的性能損失只有,幾乎可以忽略不計。安全性高容器與宿主機(jī)完全隔離,默認(rèn)情況下不能相互訪問。如需強(qiáng)制更改請刪除里面對應(yīng)數(shù)據(jù)庫的數(shù)據(jù)。日常修改密碼,請使用或者 為什么使用docker? 部署快 只需要幾分鐘,就能部署好一套PHP環(huán)境 性能好 docker 的性能損失只有1-2%,幾乎可以忽略不計。 安全性高 容器與宿主機(jī)完全隔離,默認(rèn)情況...

    Java3y 評論0 收藏0
  • 【新手向 · 一站式教程】利用DigitalOcean云服務(wù)器,部署Nodejs服務(wù)

    摘要:前言關(guān)于此教程作為一名業(yè)余開發(fā)者,因為公司都是做和的。。。建議采用的方式下載,可參考官方教程。但是服務(wù)的進(jìn)程管理,即便對于初學(xué)者來說,也是必不可少的一課。 前言 關(guān)于此教程 作為一名業(yè)余Nodejs開發(fā)者,因為公司都是做Java和C++的。。。我是在沒有任何人可請教的情況下,一個坑一個坑堅(ku)實(bi)地踩過來的。作為對segmentdefault社區(qū)的回報,把自己微不足道的經(jīng)驗分...

    用戶83 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<