跳到主要内容

3.4 服务部署指南

服务部署模块可将本地或在线 IDE 的开发成果,快速、安全、稳定地部署到指定运行环境。平台面向 DevOps 场景,支持多语言、多框架和多云环境的统一部署流程,帮助开发者和运维高效完成服务上线及运维。

一、准备 FastAPI 服务

以 FastAPI 为例,编写服务代码(如 main.py):

from typing import Union
from fastapi import FastAPI
from datetime import datetime

app = FastAPI()

@app.get("/")
def say_hello():
return {"Hello": "World from FastApi MCP!"}

@app.get("/current_time", tags=["mcp"])
def get_current_time():
"""获取当前服务器时间"""
return {"current_time": datetime.now().isoformat()}

@app.post("/report/{uuid}", tags=["mcp"])
def fetch_report(uuid: str):
"""根据 UUID 获取报告"""
return {"report_uuid": uuid, "status": "Report fetched successfully"}

二、本地运行测试

在终端运行,确保服务可正常启动:

uvicorn main:app

正常输出如下:

INFO:     Started server process [12446]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)

如遇端口占用或依赖缺失,请根据提示修复。

三、发布为 API 服务

  1. 在 Studio 中选中 main.py 文件。
  2. 点击右上角“发布”按钮,按提示完成发布。

发布服务示意图

四、查看与测试服务

  • 发布完成后,可在 Studio 的 服务页面 查看已发布服务。
  • 服务初始为“预发”状态,可在详情页获取“测试访问地址”。
  • 点击测试地址可访问 API 文档(Swagger UI),在线测试各接口。

1、服务信息示例: 服务信息图

2、接口API示例: 服务信息图

五、正式部署与副本管理

  • 预发验证通过后,可在服务详情页将服务部署为正式环境。
  • 支持设置部署副本数,满足高可用需求。
  • 点击“部署”即可完成正式发布,对外提供服务。

六、版本管理与回滚

  • 平台自动记录每次部署历史。
  • 可随时终止服务或一键回滚至任一历史版本,保障服务安全稳定。

常见问题与建议

  • 依赖管理:请确保 requirements.txt 中已包含所有依赖,平台会自动安装。
  • 端口约定:服务需监听 0.0.0.0:8000 端口,避免端口冲突。
  • 接口规范:建议为每个接口补充注释和示例,便于自动生成 API 文档。
  • 安全性:正式环境前请充分测试,避免敏感信息泄露。

如有更多问题,请参考官方文档或联系技术支持。