# MyDevops **Repository Path**: fubob/my-devops ## Basic Information - **Project Name**: MyDevops - **Description**: 验证devops整套流程 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-21 - **Last Updated**: 2025-10-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MyDevops #### 介绍 主要用于验证devops整套流程 #### 项目结构 ![image-20251021151545410](https://p.ipic.vip/zm7o13.png) #### 手动执行 ```shell # 1. 通过conda创建项目环境 conda create -n MyDevops python=3.1 pip install -r requirements.txt ``` ```python # 2. 脚本开发 from fastapi import FastAPI import uvicorn app = FastAPI() # 定义一个简单的 GET 接口 @app.get("/api/health") async def health(): return {"Status": "OK"} # 定义一个简单的 POST 接口 @app.post("/add") async def add_numbers(a: int, b: int): return {"result": a + b} if __name__ == "__main__": # 使用 uvicorn.run() 启动 FastAPI uvicorn.run(app, host="0.0.0.0", port=50001) # 启动命令:uvicorn helloWorld:app --host 0.0.0.0 --port 8000 --workers 2 # uvicorn.run( # app="main:app", # 格式:: # host="0.0.0.0", # port=50001, # # reload=True, # 开发模式,代码修改后自动重启 # log_level="debug" # 可选:设置日志级别 # ) ``` ```shell # 3. 代码质量检测 /Users/mac/docker/sonarqube_home/sonar-scanner-7.3.0.5189-macosx-aarch64/bin/sonar-scanner \ -Dsonar.projectKey=MyDevops \ -Dsonar.projectName=MyDevops \ -Dsonar.projectVersion=1.0 \ -Dsonar.sources=. \ -Dsonar.language=py \ -Dsonar.sourceEncoding=UTF-8 \ -Dsonar.python.version=3.10 \ -Dsonar.host.url=http://192.168.0.101:9000 \ -Dsonar.verbose=true \ -Dsonar.login=sqa_c31bc9b0602c3821b258286eec70c8df05f6ce0f ``` ```shell # 4. 容器制作 docker build -t mydeops:v1.0.0 . ``` ```shell # 5. 启动服务 docker run -d -p 50002:50002 --name MyDevops mydeops:v1.0.0 ``` #### devops ``` pipeline { agent any stages { stage('1. 拉取代码') { steps { echo '1. 拉取代码' } } } stage('2. 使用的sonarqube代码质量检测') { steps { echo '使用的sonarqube代码质量检测' } } stage('3. 容器镜像制作') { steps { echo '3. 容器镜像制作' } } stage('4. 上传到harbor私有仓库') { steps { echo '4. 上传到harbor私有仓库' } } stage('5. 通过ssh publish 执行shell脚本,部署服务') { steps { echo '5. 通过ssh publish 执行shell脚本,部署服务' } } } ```