【运维】DevOps全流程笔记(未完成)

运维笔记

  • DevOps基本流程
  • Code阶段工具(gitlab安装)
  • Build阶段工具(Maven安装)
  • Integrate阶段工具Jenkins
    • Jenkins介绍
    • Jenkins安装
    • Jenkins入门配置
  • CI/CD操作
  • 集成Sonar Qube
  • 集成Harbor
  • Jenkins流水线
  • Kubernetes编排工具

DevOps全流程笔记,参考视频https://www.bilibili.com/video/BV17x4y1o75G

DevOps基本流程

DevOps:就是一整套的工具链和一整套的体系方法把这套工具链串起来让开发工作和运行维护工作变得更加轻松

  • PLAN:开发团队根据客户的目标制定开发计划
  • CODE:根据PLAN开始编码过程,需要将不同版本的代码存储在一个库中,
  • BUILD:编码完成后,需要将代码构建并且运行
  • TEST:成功构建项目后,需要测试代码是否存在BUG或错误。
  • DEPLOY:代码经过手动测试和自动化测试后,认定代码已经准备好部署并且交给运维团队.
  • OPERATE:运维团队将代码部署到生产环境中。
  • MONITOR:项目部署上线后,需要持续的监控产品。
  • INTEGRATE:然后将监控阶段收到的反馈发送回PLAN阶段,整体反复的流就是DevOps的核心,即持续集成、持续部署。
    在这里插入图片描述

Jenkins负责代码什么时候构建、测试(Jenkins内部安装构建和测试工具)、发布以及如何部署

程序员把代码push到gitlab以后,Jenkins把代码pull下来,使用Maven或Gradle来build,然后测试,把可运行的软件发布到服务器,再基于容器进行部署
在这里插入图片描述

Code阶段工具(gitlab安装)

这里的前提是安装了git以及docker和docker-compose,若未安装可以参考https://git-scm.com和本人文章微服务项目的部署

关闭防火墙

systemctl stop firewalld

查看docker hub提供的gitlab相关

cd docker
docker search gitlab

在这里插入图片描述
安装最新gitlab

docker pull gitlab/gitlab-ce:latest

查看镜像

docker images

在这里插入图片描述
创建docker-compose.yml文件(记得服务器IP要改)
在这里插入图片描述
启动容器

docker-compose up -d

直接访问external_url即可

进入到容器内部

docker exec -it gitlab bash
cat /etc/gitlab/initial_root_password

会显示出默认密码
在这里插入图片描述
然后就可以登录gitlab了,记得修改密码

Build阶段工具(Maven安装)

克隆一个虚拟机镜像,开始maven安装

Integrate阶段工具Jenkins

Jenkins介绍

Jenkins最主要的工作就是将GitLab上可以构建的工程代码拉取并且进行构建,再根据流程可以选择发布到测试环境或是生产环境。

一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布到生产环境。

  • Cl过程即是通过Jenkins将代码拉取、构建、制作镜像交给测试人员测试。
    • 持续集成:让软件代码可以持续的集成到主干上,并自动构建和测试。
  • CD过程即是通过Jenkins将打好标签的发行版本代码拉取、构建、制作镜像交给运维人员部署。
    • 持续交付:让经过持续集成的代码可以进行手动部署。
    • 持续部署:让可以持续交付的代码随时随地的自动化部署。
      在这里插入图片描述

Jenkins安装

拉取Jenkins镜像

docker pull jenkins/jenkins

编写docker-compose.yml

version: "3.1"
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/

首次启动会因为数据卷data目录没有权限导致启动失败,设置data目录写权限

chmod -R a+w data/

修改镜像源

# 修改数据卷中的hudson.model.UpdateCenter.xml文件
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>https://updates.jenkins.io/update-center.json</url>
</site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
</site>
</sites>
# 清华大学的插件源也可以
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

再次重启Jenkins容器,访问Jenkins(需要稍微等会)

查看密码登录Jenkins,并登录下载插件

docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword

选择需要安装的插件

下载完毕设置信息进入首页(可能会出现下载失败的插件)

Jenkins入门配置

CI/CD操作

集成Sonar Qube

集成Harbor

Jenkins流水线

Kubernetes编排工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/10217.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniApp低功耗蓝牙一键开门、多对多查找、数组匹配数组、开锁

文章目录 htmlJavaScript坑 html <view class"m_t_36"><view class"w_50_ h_100 lh_100 m_l_a m_r_a bc_409eff radius_10 color_fff ta_c" click"openBluetoothAdapter()">一键开门</view> </view>JavaScript export…

Golang ioutil包

ReadAll ReadAll方法&#xff0c;我们比较常用的工具类方法&#xff0c;一次性读取文件的所有内容并返回&#xff0c;适用于读取小文件&#xff0c;如果文件太大会占用太多内存。调用 ReadAll 方法成功&#xff0c;会读取 io.Reader的所有内容&#xff0c;返回的 err nil&…

怎么把PDF转为word?1分钟解决难题

PDF文件在我们的电脑上应用非常广泛&#xff0c;由于其较高的安全性和兼容性&#xff0c;得到了广泛的认可。然而&#xff0c;对于一些人来说&#xff0c;PDF文件不能直接进行编辑和修改可能是一个问题。因此&#xff0c;通常我们需要将其转换为Word格式&#xff0c;以便在Word…

[php-cos]ThinkPHP项目集成腾讯云储存对象COS

Cos技术文档 1、安装phpSdk 通过composer的方式安装。 1.1 在composer.json中添加 qcloud/cos-sdk-v5: >2.0 "require": {"php": ">7.2.5","topthink/framework": "^6.1.0","topthink/think-orm": "…

【Redis】Redis zset 实现排行榜

文章目录 前言案例程序设计score 设计 (相同积分的排序)缓存数据定时刷新当心缓存击穿 前言 排行榜是业务开发中常见的一个场景&#xff0c;如何设计一个好的数据结构能够满足高效实时的查询&#xff0c;下面我们结合一个实际例子来讨论一下。 案例 大概需求就是: 排行榜上显…

数据库监控工具-PIGOSS BSM

PIGOSS BSM 运维监控系统的重要功能之一是数据库监控&#xff0c;它能够帮助数据库管理员(DBA)和系统管理员监控包含Oracle、SQL Server、MySQL、DB2、PostgreSql、MongoDB、达梦、南大通用、人大金仓、神州通用等多种类异构型的数据库环境。PIGOSS BSM通过执行数据库查询来采集…

DSSAT模型教程

详情点击链接&#xff1a;R语言与作物模型&#xff08;DSSAT模型&#xff09;教程 前言 随着基于过程的作物生长模型&#xff08;Process-based Crop Growth Simulation Model&#xff09;的发展&#xff0c;R语言在作物生长模型和数据分析、挖掘和可视化中发挥着越来越重要的…

Python基础-列表(list)和元组(tuple)

Python包含6种内建的序列&#xff1a;列表&#xff0c;元组&#xff0c;字符串&#xff0c;Unicode字符串&#xff0c;buffer对象&#xff0c;xrange对象&#xff0c;本文讨论列表和元组。 1.列表可以修改&#xff0c;元组则不能修改。 2.几乎在所有的情况下&#xff0c;列表…

详细解析python视频选择--【思维导图知识范围】

C ,JAVA JAVAWEB ,微信小程序等 都有视频选择的分析。 语言视频选择收录专辑链接C张雪峰推荐选择了计算机专业之后-在大学期间卷起来-【大学生活篇】JAVA黑马B站视频JAVA部分的知识范围、学习步骤详解JAVAWEB黑马B站视频JAVAWEB部分的知识范围、学习步骤详解SpringBootSpringB…

Cesium:加载geojson面贴地和显示边界问题

1.背景 cesium加载geojson面数据后&#xff0c;有部分数据在地形下面显示不全&#xff0c; 加了clampToGround: true&#xff0c;设置贴地后&#xff0c;边界又不见了 this.viewer.dataSources.add(GeoJsonDataSource.load(http://xx/xzbj.geojson, {stroke: Color.BLACK.with…

保护隐私与安全的防关联、多开浏览器

随着互联网的不断发展&#xff0c;我们越来越离不开浏览器这个工具&#xff0c;它为我们提供了便捷的网络浏览体验。然而&#xff0c;随着我们在互联网上的活动越来越多&#xff0c;我们的个人信息和隐私也日益暴露在网络风险之下。在这种背景下&#xff0c;为了保护个人隐私和…

阿里Java开发手册~ORM 映射

1. 【强制】在表查询中&#xff0c;一律不要使用 * 作为查询的字段列表&#xff0c;需要哪些字段必须明确写明。 说明&#xff1a; 1 &#xff09; 增加查询分析器解析成本。 2 &#xff09; 增减字段容易与 resultMap 配置不一致。 2. 【强制】 POJO 类的 布尔 属性不…

PDF添加水印以及防止被删除、防止编辑与打印

方法记录如下&#xff1a; 1、添加水印&#xff1b; 2、打印输出成一个新的pdf&#xff1b; 3、将pdf页面输出成一张张的图片&#xff1a;&#xff08;福昕pdf操作步骤如下&#xff09; 4、将图片组装成一个新的pdf&#xff1a;&#xff08;福昕pdf操作步骤如下&#xff09;…

Android 任务调度 WorkManager 和 JobScheduler 的使用

在过去&#xff0c;常常使用后台Service来执行定时任务。虽然Service是执行后台任务的一种方式&#xff0c;但自Android 8.0&#xff08;API级别26&#xff09;以后&#xff0c;Google推荐使用更高效和系统友好的方式来执行定时任务&#xff0c;例如JobScheduler和WorkManager。…

flask实现一个登录界面

flask实现一个登录界面 基础的Flask项目结构 forms.py&#xff1a;定义登录表单和表单字段的文件。templates/login.html&#xff1a;用于渲染登录表单的 HTML 模板文件。routes.py&#xff1a;定义应用的路由和视图函数的文件。__init__.py&#xff1a;创建并初始化 Flask 应…

Java Spring和Spring集成Mybatis

0目录 1.Spring 2.Spring集成Mybatis 1.Spring 特性 IOC&#xff1a;控制反转 AOP&#xff1a;面向切面 Spring组成部分 在SMM中起到的作用&#xff08;粘合剂&#xff09; Spring理念 OOP核心思想【万物皆对象】 Spring核心思想【万物皆Bean组件】 Spring优势 低侵入式 …

MySQL学习笔记 ------ 排序查询

一、语法 SELECT 查询列表 FROM 表名 【WHERE 筛选条件】 ORDER BY 排序列表 【ASC}DESC】&#xff1b;#支持多个排序条件&#xff0c;以逗号分隔 二、特点 1、ASC &#xff1a;升序&#xff0c;如果不写默认升序 DESC&#xff1a;降序 2、排序列表 支持 单个字段…

基于新浪微博海量用户行为数据、博文数据数据分析:包括综合指数、移动指数、PC指数三个指数

基于新浪微博海量用户行为数据、博文数据数据分析&#xff1a;包括综合指数、移动指数、PC指数三个指数 项目介绍 微指数是基于海量用户行为数据、博文数据&#xff0c;采用科学计算方法统计得出的反映不同事件领域发展状况的指数产品。微指数对于收录的关键词&#xff0c;在指…

Java运算符

大体上&#xff0c;与C语言差不多&#xff0c;不同的地方&#xff0c;我用红色字体标注了 算术运算符 1. 基本四则运算符&#xff1a;加减乘除模 ( - * / %) int a 10 ; int b 20 ; System . out . println ( a b ); // 30 System . out . println ( a - b…

数据结构--线性表2-1

目录 一、线性结构的定义 二、线性表的表示 三、顺序表的实现&#xff08;或操作&#xff09; 1、修改&#xff1a; 2、插入&#xff1a; 四、顺序表的运算效率分析&#xff1a;时间效率分析&#xff1a; 一、线性结构的定义 若结构时非空有限集&#xff0c;则有且仅有一个…