什么是Lightwings
Lightwings 是一款腾讯云自研的应用开发工具,通过提供模块化开发能力以及代码管理能力,让您更专注于代码的编写,快速构建自己的应用。
如何使用 Lightwings 开发
功能介绍
新增应用
进入 Lightwings 卡片详情页,单击 Lightwings 应用管理,单击新增应用,即可开始第一个 Lightwings 应用的部署。
下载代码模板
根据业务选定的编程语言,在控制台中下载对应的代码模板。目前支持 golang-http、python3-http、java11、node17、php8等5种语言,将代码模板下载至本地后进行编写调试。
编写业务代码
代码模板下载至本地后,为.zip格式;
解压后,所有的业务代码都在代码模板文件夹下的 function 文件夹中,修改 function 文件夹内的代码即可。
上传时只需提供 function 文件夹的zip压缩文件,所有在 function 文件夹下的文件修改才会生效。所有的模板都有固定的入口。
golang-http
golang-http 模板使用的 golang 版本为1.18,通过go mod进行包管理。目录结构如下。应用入口为 function/handler.go 下的 handle 方法。
golang-http├── Dockerfile├── function # 只需修改此处的代码│ ├── go.mod│ ├── go.sum│ └── handler.go #入口方法 func Handle(req handler.Request) (handler.Response, error)├── go.mod├── go.sum├── main.go├── modules-cleanup.sh└── template.yml
python3-http
python3-http 模板使用的python版本为3.7,目录结构如下。应用入口为 function/handler.py 下的 handle 函数。
python3-http├── Dockerfile├── function # 只需修改此处的代码│ ├── handler.py #入口方法 def handle(event, context):│ ├── handler_test.py│ ├── requirements.txt│ └── tox.ini├── index.py├── requirements.txt└── template.yml
java11
java 模板使用的jdk版本为 openjdk11.0.16,使用 gradle 进行依赖管理,目录结构如下。应用入口位于 function/handler.py 中的 handler 方法。
java11├── build.gradle├── Dockerfile├── function # 只需修改此处的代码│ ├── build.gradle│ ├── gradle│ │ └── wrapper│ │ ├── gradle-wrapper.jar│ │ └── gradle-wrapper.properties│ ├── gradlew│ ├── gradlew.bat│ ├── settings.gradle│ └── src│ ├── main│ │ └── java│ │ └── com│ │ └── openfaas│ │ └── function│ │ └── Handler.java #入口方法 public IResponse Handle(IRequest req)│ └── test│ └── java│ └── HandlerTest.java├── gradle│ └── wrapper│ ├── gradle-wrapper.jar│ └── gradle-wrapper.properties├── README.md├── settings.gradle└── template.yml
node17
node17模板使用的 node17版本为17。目录结构如下。应用入口为 function/handler.js 下的方法。
node17├── Dockerfile├── function # 只需修改此处的代码│ ├── handler.js #入口方法│ └── package.json├── index.js├── package.json└── template.yml
php8
php8 模板目录结构如下。应用入口为 function/src/Handler.php 下的 handle 方法。
php8├── Dockerfile├── function # 只需修改此处的代码│ ├── composer.json│ ├── php-extension.sh│ └── src│ └── Handler.php #入口方法 public function handle(string $data): string├── index.php├── php-extension.example.sh├── readme.md└── template.yml
保存打包代码并准备上传
本地编写代码调试完毕后,将编写完业务代码之后的 function 文件夹重新打包为.zip格式,并选择对应代码模板后,准备上传代码。
发布应用
输入应用名称,上传打包好代码文件,输入应用访问地址后,单击确定,完成应用部署。
如果勾选创建成功后自动运行该应用,即可在构建成功后自动运行。
应用名称:您的应用名称,不可重复,只支持小写字母、数字和链接符号“-”,必须以字母或者数字开头和结尾,最长128个字符,应用创建后不可修改。
应用模板:一定要与您的代码语言保持一致,否则无法新增成功。
选择文件:即选择您本地已经编辑好且打包好的代码文件,只支持.zip格式。
应用访问地址:格式为 ip/lightwings/api/v1/func/hello,应用运行成功后即可通过该地址进行外网访问调用。
应用描述:描述该应用的备注,最多可输入1024个字符。
自动运行:勾选后创建应用成功后自动运行,否则不会自动运行,需要手动运行。
运行应用
应用创建后可在应用操作事件TAB页查看应用的操作历史和操作结果。如果没有勾选自动运行,则需要等应用构建成功后,选择第一个版本运行函数。
新增版本
想要修改应用时,可以选择新增一个应用版本。每个应用最多拥有5个版本。新增的应用版本可直接在控制台上进行调试。
一个应用同一时间只能运行一个版本。
调试应用
当应用创建完毕并发布成功之后,可以在线调试该应用。
删除应用
删除应用会将其所有版本全部删除,删除后不可恢复。
删除应用必须要将其所有版本全都停止,方可删除;如果有某个应用或者应用版本处于运行中/部署中等非未部署状态,则无法删除该应用。
删除应用版本
删除某个特定的应用版本,删除后不可恢复。
当把一个应用的所有版本都删除后,该应用也将被删除。
删除应用版本必须要将该应用版本停止,方可删除,否则无法删除该应用版本。
Lightwings官方交流群
欢迎各位交流反馈。