技术教育社区
www.teccses.org

Python 语言运维开发:基于Django和Vue的自动化发布系统实战

封面

作者:陈刚 高立伟编著

页数:584

出版社:上海交通大学出版社

出版日期:2022

ISBN:9787313269072

电子书格式:pdf/epub/txt

内容简介

本书以实战形式,逐步带领读者建立一个基本可用的自动化部署系统。本书的前端采用Ant design Vue作为UI,将后端提供的数据流作专业的网页呈现。本书的后端框架以Django这个最主流的Python语言的Web框架为基础,使用Django rest framework第三方库作为后端开发实现,为前端提供其所需要的数据流。后端以Python为编程语言,Django 3以上版本为Web框架,前端以js为编程语言,Ant Design Vue为Web框架,可实现一个自动化软件部署系统。前后端分离开发模式,已是大中型软件系统开发的主流技术。在运维研发领域,鲜有讲解这一开发模式的实战类书籍。希望读者在理解本书代码之后,可以独立开发一套适合自己公司的自动化部署系统。本书适合于IT从业者、对运维开发感兴趣的同行,以及希望深入学习python和Django框架的IT从业者。

目录

第 1 章 毕方项目简介1

1.1 自动化部署需求2

1.2 自动化部署系统主要模块41.3 自动化部署系统操作流程15

1.4 自动化部署系统部署拓扑图21

1.5 小结24

第 2 章 Demo 项目应用的手工部署 25

2.1 Bookinfo 之 productpage 组件26

2.2 Bookinfo 之 details 组件28

2.3 Bookinfo 之 reviews 组件30

2.4 Bookinfo 之 ratings 组

2.5 Go 语言的 demo 组件应用33

2.6 使用 GitLab 管理所有源代码35

2.7 小结 40

第 3 章 实现 GitLab 的 CI/CD 功能41

3.1 file-server 文件服务器的实现43

3.2 Docker 版 gitlab-runner 的安装配置 48

3.3 启用 GitLab 的 Pipeline triggers 功能 51

3.4 GitLab Pipeline triggers 的 Python API 示例55

3.5 将 SonarQube 集成进 GitLab 的 CI/CD 流程59

3.6 小结62

第 4 章 使用 SaltStack 实现远程部署功能63

4.1 SaltStack 简介63

4.2 SaltStack 的安装配置66

4.3 启用 Salt-API 功能70

4.4 结合部署脚本、软件包和 saltypie 来实现远程部署 73

4.5 小结84

第 5 章 Python、Django与DRF的开发环境 85

5.1 Python 环境安装85

5.2 Django 及 DRF 库安装88

5.3安装开发毕方(BiFang)所有的第三方库92

5.4 PyCharm 安装配置95

5.5新建 bifangback 项目的 app 100

5.6 本章 GitHub 代码拉取运行109

5.7 小结110

第 6 章 毕方(BiFang)数据库设计

6.1 Django model 与 ORM112

6.2 git model 115

6.3 SaltStack model 123

6.4 environment model 126

6.5 project model 128

6.6 app model 129

6.7 server model 133

6.8 release model138

6.9 permission model 141

6.10 history model 144

6.11 小结 148

第 7 章 后端用户模块

7.1 bifangback 默认首页149

7.2 bifangback 用户与用户组的 API152

7.3 bifangback 用户注册156

7.4 bifangback 用户 JWT 认证163

7.5 小结 171

第 8 章 后端项目及应用模块.

8.1 实现 bifangback 项目列表 API 172

8.2 实现 bifangback 新增项目的 API 179

8.3 实现 bifangback 查看具体项目的 API 182

8.4 实现 bifangback 修改具体项目的 API184

8.5 实现 bifangback 删除具体项目的 API 186

8.6 实现 bifangback 应用增删查改的 API 187

8.7 实现 bifangback 基于应用的权限管理 193

8.8 小结 201

第 9 章 发布单及环境流转

9.1 实现 bifangback 发布单列表 API 202

9.2 实现 bifangback 新增发布单的 API 207

9.3 实现 bifangback 软件构建的 API 211

9.4 实现 bifangback 发布单环境流转的 API 219

9.5 小结 222

第 10 章 自动化部署

10.1 实现 bifangback 发布单部署列表 API 224

10.2 实现 bifangback 部署服务器列表 API 225

10.3 实现 bifangback 自动化部署 API 225

10.4 小结

第 11 章 后端数据展示

11.1 实现 bifangback 发布单历史 API238

11.2 实现 bifangback 服务器部署历史 API 241

11.3 实现 bifangback 简单的 dashboard 244

11.4 小结248

第 12 章 前端项目选型与搭建249

12.1 项目开发语言选型249

12.2 ant-design-vue 251

12.3 css、less 与 scss/sass252

12.4 使用 Vue CLI 搭建项目254

12.5 项目引入 Antd 组件库 259

12.6 小结 260

第 13 章 前端框架 ToDoList 实现 261

13.1 ToDoList 介绍 261

13.2 Angular 实现 ToDoList 263

13.3 React 实现 ToDoList 273

13.4 Vue 实现 ToDoList 283

13.5 小结

第 14 章 前端开发模式以及公共服务配置

14.1 前后端分离开发架构简介292

14.2 请求认证方式 294

14.3 mock 数据模拟服务298

14.4 环境变量配置 301

14.5 Service 数据请求服务 302

14.6 路由管理器 Vue router 309

14.7 小结314

第 15 章 登录页面设计与搭建316

15.1 前端登录界面设计316

15.2 Flex 布局 318

15.3 通用布局组件简介321

15.4 前端登录页面搭建 32615.5 全局数据仓库 Vuex 333

15.6 路由以及 mock 服务配置336

15.7 小结 340

第 16 章 主界面及管理员模块设计与搭建 341

16.1 主界面框架设计 341

16.2 主界面布局组件 342

16.3 侧边导航组件 SideMenu 348

16.4 顶部导航组件 AdminHeader 354

16.5 内容组件 PageView 358

16.6 管理员模块 361

16.7 用户组页面搭建365

16.8 用户页面搭建 373

16.9 管理员基础服务配置 381

16.10 小结 389

第 17 章 项目应用、服务器模块设计与搭建390

17.1 项目与应用 390

17.2 项目管理页面搭建 399

17.3 应用管理页面搭建 408

17.4 项目与应用基础服务配置 427

17.5 服务器管理模块 438

17.6 服务器管理页面搭建 439

17.7 服务器基础服务配置 450

17.8 小结 457

第 18 章 发布单生成、流转模块设计与搭建458

18.1 发布单生成模块 458

18.2 发布单列表页面搭建 463

18.3 发布单部署历史页面搭建 478

18.4 发布单生成基础服务配置 482

18.5 环境流转模块 490

18.6 环境流转页面的搭建 493

18.7 环境流转基础服务配置 501

18.8 小结 504

第 19 章 发布单部署、Dashboard 模块设计与搭建 505

19.1 发布单部署 505

19.2 待部署列表页面搭建 510

19.3 部署发布单516

19.4 部署模块基础服务配置 526

19.5 Dashboard 数据面板模块 530

19.6 Dashboard 页面搭建 535

19.7 Dashboard 基础服务配置 546

19.8 小结 550

第 20 章 前后端服务联调551

20.1 前端接口服务转发 551

20.2 后端服务本地启动 554

20.3 前后端联调 558

20.4 前端项目打包部署 560

20.5 小 结 564

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Python 语言运维开发:基于Django和Vue的自动化发布系统实战》
Article link:https://www.teccses.org/1472060.html