騰訊云Serverless部署Flask應(yīng)用
說明:由于騰訊云Serverless 平臺又發(fā)生了更改,本文已經(jīng)不適用,僅作參考
一、說明
網(wǎng)上很多例子都是基于單腳步 (即項目都在一個文件中, 如 app.py ), 但是我們在實際項目開發(fā)中應(yīng)該都是使用包來組織程序, 因此我這里使用包的項目來部署到騰訊云 Serverless 平臺.
二、操作
1.項目準(zhǔn)備
本地編寫的 Flask 項目(代碼可參考 Flask 入門教程-李輝).



注意這里的項目名為 nowax, 而不是 app
2.部署
詳細(xì)步驟可參考 騰訊云文檔的控制臺部署指南.

注意查看部署日志, 稍后可收到部署成功的提示.
3.訪問應(yīng)用 ( 發(fā)現(xiàn)問題 )
部署成功后, 點擊[訪問應(yīng)用]發(fā)現(xiàn)提示錯誤.

import app # Replace with your actual application\nModuleNotFoundError: No module named 'app'",
根據(jù)此提示可以大致分析出是沒有找到 app這個模塊, 但是我實際的項目名是 nowax.
然后我們打開云函數(shù)查看我們上傳的代碼, 可以在 sl_handler.py 文件中看到默認(rèn) import 的是 app 模塊, 而我們的是 nowax模塊, 所以解決方法無非兩種:


- 方法1. 直接在云函數(shù)中修改
這里修改后下次更新我們的代碼因為不會覆蓋 sl_handler.py, 所以后續(xù)更新也不會有影響.

- 方法2. 修改項目名
如果我們的項目名就是 app, 那么我們以后就不需要在部署后再做修改了.

修改之后我們更新代碼重新部署即可正常訪問應(yīng)用.

浙公網(wǎng)安備 33010602011771號