【云原生】DevOps(一):DevOps介绍及Code工具使用

举报
是Dream呀 发表于 2025/12/04 14:41:52 2025/12/04
【摘要】 【云原生】DevOps(一):DevOps介绍及Code工具使用

一、DevOps介绍

软件开发最开始是由两个团队组成:

开发计划由开发团队从头开始设计和整体系统的构建。需要系统不停的迭代更新。

运维团队将开发团队的Code进行测试后部署上线。希望系统稳定安全运行。

这看似两个目标不同的团队需要协同完成一个软件的开发。

在开发团队指定好计划并完成coding后,需要提供到运维团队。

运维团队向开发团队反馈需要修复的BUG以及一些需要返工的任务。

这时开发团队需要经常等待运维团队的反馈。这无疑延长了事件并推迟了整个软件开发的周期。

会有一种方式,在开发团队等待的时候,让开发团队转移到下一个项目中。等待运维团队为之前的代码提供反馈。

可是这样就意味着一个完整的项目需要一个更长的周期才可以开发出最终代码。


基于现在的互联网现状,更推崇敏捷式开发,这样就导致项目的迭代速度更快,但是由于开发团队与运维团队的沟通问题,会导致新版本上线的时间成本很高。这又违背的敏捷式开发的最初的目的。

那么如果让开发团队和运维团队整合到成一个团队,协同应对一套软件呢?这就被称为DevOps

DevOps,字面意思是Development &Operations的缩写,也就是开发&运维。

虽然字面意思只涉及到了开发团队和运维团队,其实QA测试团队也是参与其中的。

网上可以查看到DevOps的符号类似于一个无穷大的符号

DevOps

null

这表明DevOps是一个不断提高效率并且持续不断工作的过程这表明DevOps是一个不断提高效率并且持续不断工作的过程

DevOps的方式可以让公司能够更快地应对更新和市场发展变化,开发可以快速交付,部署也更加稳定。

核心就在于简化Dev和Ops团队之间的流程,使整体软件开发过程更快速。

整体的软件开发流程包括:

PLAN:开发团队根据客户的目标制定开发计划

CODE:根据PLAN开始编码过程,需要将不同版本的代码存储在一个库中。

BUILD:编码完成后,需要将代码构建并且运行。

TEST:成功构建项目后,需要测试代码是否存在BUG或错误。

DEPLOY:代码经过手动测试和自动化测试后,认定代码已经准备好部署并且交给运维团队。

OPERATE:运维团队将代码部署到生产环境中。

MONITOR:项目部署上线后,需要持续的监控产品。

INTEGRATE:然后将监控阶段收到的反馈发送回PLAN阶段,整体反复的流程就是DevOps的核心,即持续集成、持续部署。

为了保证整体流程可以高效的完成,各个阶段都有比较常见的工具,如下图:

软件开发过程&涉及工具

null

最终可以给DevOps下一个定义:DevOps 强调的是高效组织团队之间如何通过自动化的工具协作和沟通来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。

自动化的工具协作和沟通来完成软件的生命周期管理

二、Code阶段工具

在code阶段,我们需要将不同版本的代码存储到一个仓库中,常见的版本控制工具就是SVN或者Git,这里我们采用Git作为版本控制工具,GitLab作为远程仓库。

2.1 Git安装

https://git-scm.com/(傻瓜式安装)

2.2 GitLab安装

单独准备服务器,采用Docker安装

查看GitLab镜像

docker search gitlab

拉取GitLab镜像

docker pull gitlab/gitlab-ce

准备docker-compose.yml文件

version: '3.1'
services:
gitlab:
image: 'gitlab/gitlab-ce:latest'
container_name: gitlab
restart: always
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.11.11:8929'
gitlab_rails['gitlab_shell_ssh_port'] = 2224
ports:
- '8929:8929'
- '2224:2224'
volumes:
- './config:/etc/gitlab'
- './logs:/var/log/gitlab'
- './data:/var/opt/gitlab'

启动容器(需要稍等一小会……)

docker-compose up -d

访问GitLab首页

首页

null

查看root用户初始密码

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

初始密码

null

登录root用户

登录成功后跳转页面

null

第一次登录后需要修改密码

修改密码

null

搞定后,即可像Gitee、GitHub一样使用。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。