Python容器型
创建应用
登录云开发平台,点击「免费云开发」,进入「快速开始」页面,点击「应用搬站」。
选择「Python」,选择「容器型」,点击下一步,填写完信息之后,点击下一步,选择「计算服务」,开通项目所依赖的云服务,点击完成。
应用创建完成后,点击「在线开发部署」,等待代码仓库完成初始化,自动进入 CloudIDE页面,之后打开 README.md 详细阅读。
说明
云开发平台默认提供了一个简单的demo—一个fastapi框架开发的简单Web应用,默认使用gunicorn启动项目,应用必须通过8080端口提供服务。关于项目启动命令的自定义修改,可在prepare.sh中的“自定义命令注释快”内修改。
配置文件
.workbench
不可删除,云开发平台应用部署配置文件。
fcRouteDefault,「路由/函数入口」配置入口。
cicd,构建打包部署应用的 Shell 指令集;核心:将要部署的内容全部打包到项目根目录的 code.zip 压缩包,云开发平台只认项目根目录的 code.zip 压缩包进行部署。
prepare.sh
为阿里云云开发平台构建用户自定义镜像的前置操作,处理环境变量以及启动命令等操作。
该脚本会生成dockerfile入口文件 “start.sh”,开发者需要在prepare.sh的指定位置添加服务启动命令。
Dockerfile
根据提供的Dockerfile模板进行定制。
云开发平台默认只提供容器8080端口的映射。
云开发平台提供了base镜像 registry.cn-shanghai.aliyuncs.com/aliyun_workbench/python3.6:1.0, 该镜像继承自官方镜像 [python:3.6.3-jessie], 同时集成了阿里云sdk。
numpy==1.13.3 \
scipy==1.0.0.0 \
wand==0.4.4 \
opencv-python==3.3.0.10 \
matplotlib==2.0.2 \
scrapy==1.4.0 \
cbor==1.0.0 \
aliyun-fc==0.6 \
meinheld==0.6.1 \
aliyun-fc2==2.2.0 \
tablestore==5.1.0 \
aliyun-python-sdk-core-v3==2.13.3 \
aliyun-python-sdk-iot==7.8.0 \
aliyun-python-sdk-ecs==4.10.1 \
aliyun-python-sdk-vpc==3.0.2 \
aliyun-python-sdk-rds==2.1.4 \
aliyun-python-sdk-kms==2.5.0 \
aliyun-python-sdk-imm==1.3.4 \
aliyun-log-python-sdk==0.6.38 \
aliyun-python-sdk-ram==3.0.0 \
aliyun-python-sdk-sts==3.0.0 \
aliyun-python-sdk-fnf==1.0.0 \
aliyun-mns==1.1.5 \
aliyun-python-sdk-cdn==3.0.8 \
cprotobuf==0.1.9 \
pydatahub==2.11.2 \
oss2==2.6.0
上传你的应用
打开你本地的 FastAPI 应用根目录,选中所有文件(依赖文件可以不用选),拖拽到 CloudIDE 左侧文件列表,等待应用上传完成。
部署
当测试没问题可以部署时,点击 CloudIDE 左侧 「WB」插件,打开「部署」面板,选择一个环境,点击「部署」,等待部署成功即可,可以用部署成功分配的测试域名查看线上效果。