尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

实用指南:基于阿里云系列平台的python微服务设计与DevOps实践

实用指南:基于阿里云系列平台的python微服务设计与DevOps实践
📅 发布时间:2026/6/19 7:24:49

实用指南:基于阿里云系列平台的python微服务设计与DevOps实践

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 1. 项目构建
  • 2. 新建代码仓库
  • 3. 建立流水线
    • 3.1 流水线源
    • 3.2 镜像构建
    • 3.3 服务部署
  • 总结


前言

1. 项目构建

在这里插入图片描述

#基于Python最新基础镜像
FROM crpi-ru2a6rcf4x9ry77a.cn-hangzhou.personal.cr.aliyuncs.com/ck_acr_test/ck_acr_test_images_house:my_python_-slim-bookworm
LABEL maintainer="<ck@uestc.edu.cn>"# 工作目录WORKDIR /app# 安装Python库COPY requirements.txt requirements.txtRUN pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/#复制当前文件夹中全部文件到镜像中COPY . .#容器启动时执行命令CMD ["python3","server.py"]
sanic
requests
#引入Sanic库中必要的子模块
from sanic import Sanic,response
#创建Sanic应用
app = Sanic("Sample_HTTP_Api")
#将异常反馈以JSON的形式输出
app.config.FALLBACK_ERROR_FORMAT="json"
#默认情况下,Sanic会忽略GET请求的消息体,将ignore_body参数设置为False可以让Sanic接收Get请求的消息体
@app.get("/v1/devices",ignore_body=False)
async def get_devices(request):
#request参数包含路由到该处理函数的请求的所有信息,包括uRL、header、body
#Sanic提供了多种便捷的HTTP响应的封装格式,这里使用JSON作为响应
return response.json(
{
"status":0,
"message":"get_devices接口尚未完成"
}
)
#定义添加设备的接口
@app.post("/v1/devices")
async def add_devices(request):
return response.json(
{
"status":0,
"message":"add_devices接口尚未完成"
}
)
#定义添加修改的接口
@app.put("/v1/devices")
async def update_devices(request):
return response.json(
{
"status":0,
"message":"update_devices接口尚未完成"
}
)
#定义删除设备的接口
@app.delete("/v1/devices")
async def delete_devices(request):
return response.json(
{
"status":0,
"message":"delete_devices接口尚未完成"
}
)
if __name__ == "__main__":
#启动Sanic应用,为了避免多进程的额外问题,这里使用单进程模式
app.run(host="0.0.0.0",port=8000,single_process=True)
curl 127.0.0.1:8000/v1/device

在这里插入图片描述

2. 新建代码仓库

在这里插入图片描述

在ECS上

git clone git@codeup.aliyun.com:6835bbe8c3d70bfc7878f751/exp_pyms_basic.git

在这里插入图片描述
然后把代码文件传到上面去

在这里插入图片描述

3. 建立流水线

我们复制以前的流水线 2025-09-21_docker_2,然后进行修改

3.1 流水线源

在这里插入图片描述

只需要更改代码仓库就可以了

3.2 镜像构建

不用修改

3.3 服务部署

只需要更改部署脚本

docker login --username=xxxxx xxxxx.com -pxxxxx
docker rm -f exp_pyms_basic
#确保历史容器实例
docker pull ${
CONTAINER_TAG
}
docker run -d --restart=always --name exp_pyms_basic -p 8000:8000 ${
CONTAINER_TAG
}

然后就可以运行了

在这里插入图片描述
然后开始运行流水线

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

总结

相关新闻

  • 使用命令行删除 Windows 网络映射驱动器
  • 20232314 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • ChatTime的一些理解

最新新闻

  • DeepSeek-V4高效长上下文推理技术解析
  • 技术解析-CPR曲面重建:从血管拉直到三维可视化的核心算法与临床价值
  • S12XS中断系统XINT配置详解:从原理到汽车电子实战
  • 【新】5p229基于python的新能源汽车数据分析系统的设计与实现3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • MCU系统集成模块(SIM)解析:复位、中断与低功耗设计实战
  • 从零到一:基于JasperGold的FPV实战入门与避坑指南

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号