从0到DevOps(1)-初步了解DevOps和容器

DevOps从提出以来陆续成为行业普遍实践,目前是数字化生产普遍不可或缺的信息底座。本系列文章旨在系统性的阐述与认识DevOps, 了解企业实践里DevOps的实际面貌。

什么是DevOps?

DevOps 是一套实践、工具和文化理念,为实现用户不断的软件功能和可用性要求, 实现软件开发团队和 IT 团队之间的流程自动化和集成。它强调团队赋能、跨团队沟通和协作以及技术自动化。

DevOps 运动始于 2007 年左右,当时软件开发和 IT 运营社区开始担忧传统的软件开发模式。在此模式下,编写代码的开发人员与部署和支持代码的运营人员会独立工作。DevOps 这一术语由"开发"和"运营"两个词构成,它反映了将这些领域整合为一个持续流程的过程。

本质上, DevOps是以不断加剧的需求为中心倒逼的生产方式改革, 从工程化角度的落地实践. 这样背景下, 开发与运维的技术密度也快速上升.

DevOps 生命周期由八个阶段组成,它们分别代表开发(循环的左半部分)和运营(循环的右半部分)所需的流程、功能和工具。它通常包含这八个步骤: 规划, 编码, 构建持续集成和持续交付, 测试, 发布, 部署, 运行, 监控.

容器是什么?

容器是DevOps里一个很重要的部分。传统的物理机,或者虚拟机方式不满足软件快速变化迭代, 服务弹性扩缩容等环境配置和资源编排要求,容器技术因此而生。容器和虚拟机是非常相似的资源虚拟化技术。虚拟化是一个过程,在这个过程中,RAM、CPU、磁盘或网络等系统单一资源可以"虚拟化"并表示为多个资源。容器和虚拟机之间的主要区别在于,虚拟机将整个计算机虚拟化到硬件层,而容器只虚拟化操作系统级别以上的软件层。

容器怎么使用?

以Windows系统为例, 简单带大家认识一下容器.

  1. Windows 10/11进入Control Panel -> Programs and Features, 先安装 WSL (Windows Subsystem for Linux) 以及 VMP (Virtual Machine Platform)
  1. 安装WSL2, 用管理员身份打开powershell, 运行:

    wsl.exe --updatewsl --install -d Debian

跑完会发现系统里有了Debian图标,打开Debian图标就可以在Windows里使用Debian Linux

  1. 下载安装Docker Windows. 配置里选择使用WSL2引擎。到这里container Engine就准备好了

    https://docs.docker.com/docker-for-windows/wsl/#download

  1. 接下来准备容器镜像运行实际容器。在Docker Desktop 搜索框搜索 helloworld, 会看到这个测试镜像, 点击Pull. 下载完成后到Docker Desktop Images就会看到下载下来的镜像
  1. 注意这个大小容量, 结合上述容器以及虚拟机的差异, 可以看到容器轻量化。 点击运行(run)启动这个镜像。 到docker desktop Containers里就会看到这个容器实例。到Debian bash 里运行 docker ps, 能看到容器信息:
  1. 打开浏览器访问 localhost:8080, 已经可以访问到应用:
  1. 查看容器详情, 可以看到容器内的文件。使用docker cp命令可以简便实现Windows和容器之间的文件传输如:​​​​​​​

    docker cp foo.txt container_id:/foo.txtdocker cp container_id:/foo.txt foo.txt

到这就完成了容器的使用和基本了解。 后续笔者将容器的基本使用, 以及DevOps的内容分批介绍。欢迎关注生产力联盟并留言交流

相关推荐
草莓熊Lotso4 分钟前
Linux 基础开发工具入门:软件包管理器的全方位实操指南
linux·运维·服务器·c++·人工智能·网络协议·rpc
Jewel Q21 分钟前
PowerShell 和 CMD
运维
Mr_Xuhhh26 分钟前
GUI自动化测试--自动化简单示例
运维·服务器·自动化
羑悻的小杀马特31 分钟前
零成本自建私人知识库教学,Leanote+Cpolar 内网穿透,手机电脑随时同步,无需云服务器,效率翻倍!
运维·服务器·coplar·leanote
chevysky.cn5 小时前
Jenkins自动部署CI/CD
运维·ci/cd·jenkins
躲猫猫的喵喵8 小时前
Ubuntu2204降内核版本
linux·运维·服务器·ubuntu
zdslovezy8 小时前
CentOS 系统升级 OpenSSH 和 OpenSSL 的完整方案
linux·运维·centos
cccccc语言我来了9 小时前
(Linux (6):从包管理到工具探索,构建系统操作基础认知)
linux·运维·服务器
8K超高清9 小时前
高校巡展:中国传媒大学+河北传媒学院
大数据·运维·网络·人工智能·传媒
wuk99810 小时前
CentOS7环境搭建L2TP服务器
运维·服务器