Docker 测试场景领域应用剖析
一、思考??
1.想搭建一个网站,如何做?
- LNMP架构(Linux + nginx + mysql +php/python)
- 安装各种软件以及各自依赖环境
- 参数配置、编码、提测、部署上线、运维
2.网站想换位置,迁移至阿里云?
3.如何实现数据备份、版本更新、分布式部署、高可用性?
二、虚拟化技术
1.为什么要使用虚拟化技术?
- 资源合理高效利用
- 节省成本
2.传统虚拟化技术(主机级虚拟化=VMware)
类型—:
- 在硬件设备层上直接进行模拟,从而实现多个操作系统
类型二:
- GuestOS宿主机上运行VMM。
- VMM运行上客户机 (HOST os)
- Host OS对底层硬件进行调用
- 当前解决方案
- 开源
- OpenStack
- KVM
- 商业
- VMare vshere
- VMware Fusion
- 开源
3.系统级虚拟化技术(容器级虚拟化=Docker)
- 在操作系统内核上,允许多个隔离的用户空间(容器)(user space instance)
- 无需模拟硬件层
- 共享同一个Host oS宿主机的内核
4.container 容器的核心技术
- CGroup(译:c歌如破)
-
- 限制容器的资源使用情况
-
- 调度多少个CPU时间片、占用多大内存、多少磁盘io等
- NameSpace(内幕.撒泼)命名空间
- chroot
- 文件系统隔离
- 比如: 不同的分区、不同的挂载点、ext3、ext4,容器之间的文件系统需要使用 chroot
5.docker vs vmware(or virtualbox) = 容器 和 虚拟机 的区别?
1、共用内核是docker里面资源占用内存少的原因,为啥共用内核了内存就能占用很少
Linux 的内核 (kemel) 一般有几百兆,如果是虚拟机VMware 安装各种虚拟机的时候,虚拟机与虚拟机之间只要你是Linux 系统,那么他的内核就会占用几百兆;
如果使用 容器,容器与容器之间因为它有 公用宿主机 内核,所以他从尺寸上面至少就会少一百兆到二百兆;
我们每一个他的镜像安装包,它是经过非常大的精简,很大程度的压缩,导致镜像和容器在运行的时候,它的尺寸是非常小的,可能是镜像安装包的十分之一或百分之一,就是尺寸非常精简;
2、jenkins 的持续集成 和 这里讲的 CI/CD 是同一个吗?
3、测试领域:搭建测试环境,具体是如何应用的呢
三、docker介绍
1.什么是容器?
⒉什么是docker?
是用于创建、部署、运行应用程序的工具
微服务、CI/CD
3.为什么使用docker?
- 开发领域
- 使用docker搭建开发环境
- 测试领域
- 搭建测试环境
- 运维领域
- 运维环境或者工具
5.docker架构
- Docker platform
- Docker Engine (c/s架构)
- a server process
- a client cli
- a rest api interface
- Docker architecture
- Docker objects
- Docker:类似汽车的引擎
- Dockerfile:相当于汽车蓝图(图纸)
- Docker image 镜像:类似于样本车
- Docker container容器:类似于汽车的零部件,可以组装成一辆汽车
- Docker Registry:类似与4s店
- Docker compose:类似于老司机,可以开很多车
- Docker volume:类似于汽车的邮箱
- Docker swarm:类似于交通枢纽,来控制、管理不同的汽车(docker)
- Docker Hub (Docker Registry)
四、安装docker
1.在 Windows 中安装 docker
官方安装教程::https://docs.docker.com/docker-for-windows/
2.在 linux 中
安装 docker 在 Centos 中安装docker:
https://docs.docker.com/install/linux/docker-ce/centos/
在 ubuntu 中安装 docker:
https://docs.docker.com/install/linux/docker-ce/ubuntu/
大佬安装步骤:https://www.cnblogs.com/keyou1/p/11511067.html
3、在线练习docker
- katacoda网站:
https://www.katacoda.com/
- 每10分钟一个小练习
- Play with Docker网站:
https://labs.play-with-docker.com/
- 注册docker账号并登陆
- 每次能使用4个小时,之后会被清空
五、基本操作
1.docker image
- 列出镜像
- 下载镜像
- 删除镜像
- 查看镜像详细信息
2.docker container·运行容器
- 列出容器
- 查看容器的进程和资源利用情况
- 停止/开启容器
- 暂停/启动容器
- 删除容器
六、Docker应用场景营
- 使用 Docker 快速部署禅道
- 使用 Docker 部署个人博客
- 使用 Docker 一键部署测开平台
- 使用 Docker 搭建分布式 web 自动化测试环境
- 使用 Docker 实现 CI/CD
七、DevOps
1.简介
- 微服务
- 容器化
- CI/CD
2.CI/CD
- Cl
- 持续集成
- CD
- 持续交付
- CD
- 持续部署
九、K8S
⒉特性
- 自动装箱
-
- 基于资源依赖或其他约束,可完成容器自动部署
- 自我修复
-
- 有自愈能力
-
- 容器故障,直接移除,重建
-
- 更关注整体,不关注单个容器
- 水平拓展
-
- 可任意创建N个功能一致的容器(只要物理资源足够)
-
-
- 实现高性能、高可用性
-
-
- —个容器不够,再起一个
- 负载均衡
- 自动发布、回滚
- 配置、密码管理
- 存储编排
- 批量处理执行
*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/,谢谢!!*******
本文仅供参考;如果这篇文件对你有所帮助,麻烦动动发财的小手,推荐一波支持下万分感谢
*******请大家尊重原创,如要转载,请注明出处:作者:守护@往昔;转载自:https://www.cnblogs.com/shouhu/,谢谢!!*******