当前位置:主页 > 查看内容

Serverless 应用中心 部署 Python Flask - 框架支持

发布时间:2021-10-15 00:00| 位朋友查看

简介:操作场景 腾讯云 Flask Serverless Component,支持 Restful API 服务的部署,不支持 Flask Command。 注意: 任何支持 WSGI(Web Server Gateway Interface,即 Web 服务器网关接口)的 Python 服务端框架都可以通过该组件进行部署,例如 Falcon 框架等。……

操作场景

腾讯云 Flask Serverless Component,支持 Restful API 服务的部署,不支持 Flask Command。

注意:

任何支持 WSGI(Web Server Gateway Interface,即 Web 服务器网关接口)的 Python 服务端框架都可以通过该组件进行部署,例如 Falcon 框架等。

前提条件

  1. 在使用此组件之前,请确认您本地已安装好 Python 环境。
  2. 先初始化一个 Flask 项目,然后将 Flaskwerkzeug 添加到依赖文件 requirements.txt 中,如下:
    Flask==1.0.2
    werkzeug==0.16.0

同时新增 API 服务 app.py,下面代码仅供参考:

from flask import Flask, jsonify
app = Flask(__name__)
@app.route("/")
def index():
   return "Hello Flask"
@app.route("/users")
def users():
   users = [{'name': 'test1'}, {'name': 'test2'}]
   return jsonify(data=users)
@app.route("/users/<id>")
def user(id):
   return jsonify(data={'name': 'test1'})

操作步骤

说明:

以下步骤主要针对命令行部署操作,控制台部署请参考 控制台部署指南。

1. 安装 Serverless CLI

通过 npm 全局安装 Serverless CLI:

npm install -g serverless

2. 初始化 Flask 模版项目(可选)

如果您本地并没有 Flask 项目,可通过以下指令完成 Flask 项目初始化(本地已有项目可跳过该步骤):

serverless init flask-starter --name example
cd example

3. 配置 yml 文件

在项目根目录下,新建 serverless.yml 文件,并将下列配置模版粘贴到文件中,实现基本的项目配置。

说明:

基于您实际部署需要,您可以在 serverless.yml 中完成更多配置,yml 文件的配置信息请参考 Flask 组件全量配置。

touch serverless.yml
#serverless.yml
component: flask
name: flashDemo
stage: dev
inputs:
src:
  hook: 'pip install -r requirements.txt -t ./'
  dist: ./
  exclude:
    - .env
region: ap-guangzhou
runtime: Python3.6
apigatewayConf:
  protocols:
    - http
    - https
  environment: release

4. 应用部署

通过 sls deploy 命令进行部署,并可以添加 --debug 参数查看部署过程中的信息。

sls deploy --debug

部署完成后,通过访问输出的 API 网关链接,完成对应用的访问。

5. 监控运维

部署完成后,您可以通过访问 Serverless 应用控制台,查看应用的基本信息,监控日志。

账号配置(可选)

当前默认支持 CLI 扫描二维码登录,如您希望配置持久的环境变量/密钥信息,也可以本地创建 .env 文件:

touch .env # 腾讯云的配置信息

.env 文件中配置腾讯云的 SecretId 和 SecretKey 信息并保存:

# .env
TENCENT_SECRET_ID=123
TENCENT_SECRET_KEY=123
说明:

  • 如果没有腾讯云账号,请先 注册新账号。
  • 如果已有腾讯云账号,可以在 API 密钥管理 中获取 SecretId 和 SecretKey。

本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:分析-销售系统日志 - 日志服务 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐