阿里云:搭建基于Express的Serverless Web應(yīng)用

來(lái)源: 阿里云
作者:阿里云
時(shí)間:2021-03-30
16949
目前有很多Web應(yīng)用基于Express框架來(lái)編寫(xiě),這樣的Web應(yīng)用按照傳統(tǒng)的部署方式將部署在云主機(jī)上,但您可能不想購(gòu)買(mǎi)云主機(jī),也不想在運(yùn)維上投入太多成本,那么函數(shù)計(jì)算是一個(gè)不錯(cuò)的選擇。本文介紹如何使用函數(shù)計(jì)算來(lái)搭建基于Express的Serverless Web應(yīng)用。

目前有很多Web應(yīng)用基于Express框架來(lái)編寫(xiě),這樣的Web應(yīng)用按照傳統(tǒng)的部署方式將部署在云主機(jī)上,但您可能不想購(gòu)買(mǎi)云主機(jī),也不想在運(yùn)維上投入太多成本,那么函數(shù)計(jì)算是一個(gè)不錯(cuò)的選擇。本文介紹如何使用函數(shù)計(jì)算來(lái)搭建基于Express的Serverless Web應(yīng)用。

背景信息

不管您的函數(shù)是通過(guò)HTTP還是API網(wǎng)關(guān)觸發(fā),您都可使用函數(shù)計(jì)算提供的模板,讓Express快速地在函數(shù)計(jì)算上運(yùn)行起來(lái)。原生請(qǐng)求的Headers或者Body都會(huì)透?jìng)鹘o您的Express應(yīng)用,您只需關(guān)注如何按照Express標(biāo)準(zhǔn)方式編寫(xiě)業(yè)務(wù)代碼即可。此外,該模板還支持ES6代碼編譯成ES5,剪切打包壓縮成一個(gè).js文件。

如需遷移您的Express應(yīng)用,請(qǐng)參見(jiàn)遷移Express到函數(shù)計(jì)算。

操作步驟

1.安裝Node.js。

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.5/install.sh | bash         

nvm install 8            

2.安裝Funcraft工具。

npm install @alicloud/fun -g            

說(shuō)明 Funcraft工具的某些子命令可能會(huì)用到Docker,所以您需要安裝好Docker,詳情請(qǐng)參見(jiàn)Funcraft安裝教程。

3.通過(guò)Funcraft模板生成項(xiàng)目。

fun init -n demo https://github.com/muxiangqiu/fc-Express-nodejs8.git            

說(shuō)明 項(xiàng)目生成好后,在根目錄下有個(gè)README.md文件,閱讀該文件可以幫您快速了解項(xiàng)目骨架為您做了什么,以及相關(guān)的命令。詳情請(qǐng)參見(jiàn)README.md。

4.切換到項(xiàng)目根目錄。

cd demo           

說(shuō)明 步驟5及以后的所有命令,都在項(xiàng)目根目錄下執(zhí)行。

5.安裝依賴。

npm install            

注意 有少數(shù)特殊npm模塊的安裝可能會(huì)依賴當(dāng)前系統(tǒng)環(huán)境,為了能正確安裝函數(shù)運(yùn)行時(shí)的系統(tǒng)環(huán)境的npm模塊,可以通過(guò)fun install命令來(lái)實(shí)現(xiàn),例如Puppeteer。詳情請(qǐng)參見(jiàn)為函數(shù)安裝第三方依賴。

6.編譯。

生產(chǎn)編譯

npm run build         

開(kāi)發(fā)編譯。這種編譯方式不會(huì)進(jìn)行代碼混淆,并且生成source map信息,方便開(kāi)發(fā)調(diào)試。

npm run dev            

7.本地運(yùn)行函數(shù)。

fun local start            

8.可選:運(yùn)行調(diào)試函數(shù)。

運(yùn)行調(diào)試之前,請(qǐng)先用npm run dev命令編譯源碼,然后以調(diào)試的方式運(yùn)行函數(shù),命令如下:

fun local start -d 3000            

調(diào)試過(guò)程如下所示:

p171366.gif

9.部署函數(shù)到云端。

部署函數(shù)的時(shí)候需要用到AccessKey等信息,您可以通過(guò)fun config來(lái)配置,如果配置過(guò)請(qǐng)忽略,部署函數(shù)命令如下:

fun deploy            

立即登錄,閱讀全文
版權(quán)說(shuō)明:
本文內(nèi)容來(lái)自于阿里云,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
阿里云助力《誅仙世界》端游正式開(kāi)服!
阿里云助力《誅仙世界》端游正式開(kāi)服!
近?,完美世界游戲歷時(shí)多年打造的新國(guó)?仙俠MMORPG端游《誅仙世界》在阿?云上正式開(kāi)服。
阿里云
云服務(wù)
2024-12-292024-12-29
一文詳解阿里云AI大基建
一文詳解阿里云AI大基建
面向AI時(shí)代,阿里云基礎(chǔ)設(shè)施是如何創(chuàng)新與發(fā)展的?計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)、服務(wù)器、集群、可觀測(cè)等,阿里云全新升級(jí)的AI Infra到底有哪些重磅更新?
阿里云
云服務(wù)
2024-11-022024-11-02
AI時(shí)代云安全新范式,阿里云安全能力全線升級(jí)!
AI時(shí)代云安全新范式,阿里云安全能力全線升級(jí)!
AI時(shí)代,云安全面臨著新的挑戰(zhàn),不僅要持續(xù)面對(duì)以往的傳統(tǒng)問(wèn)題,更需要全新理念落地于產(chǎn)品設(shè)計(jì)、技術(shù)演進(jìn)、架構(gòu)設(shè)計(jì),才能實(shí)現(xiàn)效果、性能、和成本的最優(yōu)解。
AI
阿里云
云服務(wù)
2024-09-272024-09-27
連續(xù)四年!阿里云領(lǐng)跑中國(guó)公有云大數(shù)據(jù)平臺(tái)
連續(xù)四年!阿里云領(lǐng)跑中國(guó)公有云大數(shù)據(jù)平臺(tái)
近日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《中國(guó)大數(shù)據(jù)平臺(tái)市場(chǎng)份額,2023:數(shù)智融合時(shí)代的真正到來(lái)》報(bào)告——2023年中國(guó)大數(shù)據(jù)平臺(tái)公有云服務(wù)市場(chǎng)規(guī)模達(dá)72.2億元人民幣,其中阿里巴巴市場(chǎng)份額保持領(lǐng)先,占比達(dá)40.2%,連續(xù)四年排名第一。
阿里云
云服務(wù)
2024-09-182024-09-18
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
個(gè)人VIP
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家