腾讯云 Flask Serverless Component,支持 Restful API 服务的部署,不支持 Flask Command。
注意:任何支持 WSGI(Web Server Gateway Interface,即 Web 服务器网关接口)的 Python 服务端框架都可以通过该组件进行部署,例如 Falcon 框架等。
Flask
和 werkzeug
添加到依赖文件 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'})
说明:以下步骤主要针对命令行部署操作,控制台部署请参考 控制台部署指南。
通过 npm 全局安装 Serverless CLI:
npm install -g serverless
如果您本地并没有 Flask 项目,可通过以下指令完成 Flask 项目初始化(本地已有项目可跳过该步骤):
serverless init flask-starter --name example
cd example
在项目根目录下,新建 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
通过 sls deploy
命令进行部署,并可以添加 --debug 参数查看部署过程中的信息。
sls deploy --debug
部署完成后,通过访问输出的 API 网关链接,完成对应用的访问。
部署完成后,您可以通过访问 Serverless 应用控制台,查看应用的基本信息,监控日志。
当前默认支持 CLI 扫描二维码登录,如您希望配置持久的环境变量/密钥信息,也可以本地创建 .env
文件:
touch .env # 腾讯云的配置信息
在 .env
文件中配置腾讯云的 SecretId 和 SecretKey 信息并保存:
# .env
TENCENT_SECRET_ID=123
TENCENT_SECRET_KEY=123
说明:
- 如果没有腾讯云账号,请先 注册新账号。
- 如果已有腾讯云账号,可以在 API 密钥管理 中获取 SecretId 和 SecretKey。
本文介绍如何在函数计算控制台为Web应用绑定自定义域名。 前提条件 您已 创建HTT...
本章为您介绍基于SAML协议的企业IdP与华为云进行联邦身份认证的内部实现流程和配...
1. 接口描述 接口请求域名: clb.tencentcloudapi.com 。 该接口支持删除负载均...
注册域名 会产生费用吗?注册 域名 一般来说是会产生费用的。虽然也有一些免费域...
包年包月 VPN 网关 到期预警 包年包月的云资源会在到期前7天内,向您推送到期预...
域名 认证和备案区别?域名实名认证和 域名备案 的确是有区别的,前者是对域名所...
什么是 NAT 网关? NAT 网关 在内外网隔离时,将私有网络(Virtual Private Clou...
数据科学家和数据分析师经常需要回答业务问题。这可能会导致更临时的分析或某种...
本文转自雷锋网,如需转载请至雷锋网官网申请授权。 转眼之间,2020年已经接近尾...
又到一年高考时,又要填志愿,很多人问:想从事大数据行业的话,报什么专业比较...