科技
类型
可以朗读
语音朗读
100千字
字数
2023-04-01
发行日期
展开全部
主编推荐语
本书主要介绍GitLab CI/CD的相关内容。
内容简介
书中首先介绍GitLab CI/CD的基础知识,包括CI/CD的几个基本概念(pipeline、stages、job、GitLab Runner和.gitlab-ci.yml文件);然后介绍GitLab CI/CD的35个关键词、每个关键词的语法及其使用场景。
最后本书介绍CI/CD的实践,通过3种不同的项目详细讲解各种部署方式,包括微服务架构项目流水线开发、GitLab CI/CD与Kubernetes的集成,以及如何将项目部署到Kubernetes集群中等。
本书还给出了两个附录,分别是GitLab CI/CD中的预设变量和GitLab CI/CD测试题。本书适用于想要提高研发团队的软件集成、软件交付效率的开发和运维人员。
目录
- 版权信息
- 内容提要
- 推荐序一
- 推荐序二
- 前言
- 资源与支持
- 第1章 认识GitLab CI/CD
- 1.1 CI/CD的含义
- 1.2 GitLab CI/CD简介
- 1.3 GitLab CI/CD的几个基本概念
- 1.4 小结
- 第2章 CI/CD环境GitLab Runner
- 2.1 介绍
- 2.2 安装GitLab Runner
- 2.2.1 使用Docker安装GitLab Runner
- 2.2.2 在Linux系统上安装GitLab Runner
- 2.3 注册runner
- 2.4 不同执行器的特点
- 2.5 配置runner
- 2.6 runner的工作流程
- 2.7 小结
- 第3章 流水线内容.gitlab-ci.yml
- 3.1 存放位置
- 3.2 新建与编辑
- 3.3 流水线的结构
- 3.4 简单流水线示例
- 3.5 关键词
- 3.6 小结
- 第4章 初阶关键词
- 4.1 stages
- 4.2 stage
- 4.3 script
- 4.4 cache
- 4.5 image
- 4.6 tags
- 4.7 variables
- 4.7.1 在.gitlab-ci.yml文件中定义变量
- 4.7.2 在CI/CD设置中定义变量
- 4.7.3 预设变量
- 4.8 when
- 4.9 artifacts
- 4.10 before_script
- 4.11 after_script
- 4.12 only与except
- 4.12.1 only:refs/except:refs
- 4.12.2 only:variables/except:variables
- 4.12.3 only:changes/except:changes
- 4.12.4 only:kubernetes/except:kubernetes
- 4.13 小结
- 第5章 中阶关键词
- 5.1 coverage
- 5.2 dependencies
- 5.3 allow_failure
- 5.4 extends
- 5.5 default
- 5.6 inherit
- 5.7 interruptible
- 5.8 needs
- 5.9 pages
- 5.10 parallel
- 5.11 retry
- 5.12 timeout
- 5.13 release
- 5.14 小结
- 第6章 高阶关键词
- 6.1 rules
- 6.1.1 rules:if
- 6.1.2 rules:changes
- 6.1.3 rules:exists
- 6.1.4 rules:allow_failure
- 6.1.5 rules:variables
- 6.2 workflow
- 6.3 trigger
- 6.4 include
- 6.4.1 include:local
- 6.4.2 include:file
- 6.4.3 include:remote
- 6.4.4 include:template
- 6.5 resource_group
- 6.6 environment
- 6.6.1 environment:name
- 6.6.2 environment:url
- 6.6.3 environment:on_stop
- 6.6.4 environment:action
- 6.6.5 environment:auto_stop_in
- 6.7 services
- 6.8 secrets
- 6.9 dast_configuration
- 6.10 小结
- 第7章 GitLab CI/CD部署前端项目
- 7.1 准备工作
- 7.2 定义.gitlab-ci.yml的公共配置
- 7.3 安装阶段
- 7.4 测试阶段
- 7.5 编译阶段
- 7.6 部署阶段
- 7.6.1 使用Docker部署
- 7.6.2 使用阿里云的OSS部署
- 7.6.3 远程服务器部署
- 7.7 流水线优化
- 7.7.1 提取公共配置
- 7.7.2 多环境部署
- 7.7.3 自动取消旧流水线
- 7.7.4 部署冻结
- 7.7.5 定时部署
- 7.7.6 在线调试流水线
- 7.8 小结
- 第8章 Java复杂微服务应用的CI/CD方案
- 8.1 复杂应用现状
- 8.2 CI/CD方案
- 8.3 菲兹商城项目
- 8.3.1 Spring Boot后端应用
- 8.3.2 React前端应用
- 8.4 前、后端单独构建的流水线
- 8.5 构建单镜像
- 8.5.1 前端UI流水线
- 8.5.2 后端服务流水线
- 8.6 使用分布式缓存MinIO
- 8.6.1 使用Docker安装MinIO
- 8.6.2 配置GitLab Runner使用MinIO存储缓存
- 8.7 多项目微服务依赖构建单应用
- 8.7.1 项目背景及软件架构
- 8.7.2 多项目同时构建
- 8.7.3 依赖构建
- 8.7.4 自由选择分支tag构建
- 8.7.5 运行流水线
- 8.8 小结
- 第9章 部署Python应用到Kubernetes中
- 9.1 Kubernetes简介
- 9.1.1 命名空间Namespace
- 9.1.2 服务Service
- 9.1.3 工作负载Deployment
- 9.1.4 命令行管理工具kubectl
- 9.2 持续部署方案设计
- 9.3 配置kubectl
- 9.4 Python项目配置
- 9.5 流水线开发
- 9.5.1 构建并推送Docker镜像
- 9.5.2 在流水线中使用kubectl镜像
- 9.6 流水线优化
- 9.6.1 增加钉钉通知
- 9.6.2 外部触发流水线
- 9.6.3 .gitlab-ci.yml权限管控
- 9.6.4 安全部署
- 9.6.5 大项目优化
- 9.7 小结
- 附录1 GitLab CI/CD中的预设变量
- 附录2 GitLab CI/CD测试题
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。