测试开发丨测试小白也能听懂的Docker讲解和应用

在这里插入图片描述

什么是Docker

Docker按照通俗易懂的理解来说就是一个用来装应用的容器,就像可以把水装到杯子里,把饭装到碗里,把钱装到钱包里…

可以把网站放在Docker中,可以把任何想得到的程序放在Docker中。

在这里插入图片描述

Docker能解决的问题

环境配置的问题

软件开发最大的麻烦事之一,就是环境配置。

比如一个java web应用,运行起来需要一个操作系统,操作系统之上还需要jdk、tomcat、mysql、系统环境问题、配置问题,甚至jdk、tomcat版本问题都能导致程序运行失败。

所以Docker来了,它把操作系统、jdk、tomcat等全部放在集装箱里,再打包放到鲸鱼上,由鲸鱼给我们送到服务器上。

在我的机器上怎么运行,在别的机器上也怎么运行,不会有任何的问题。

一句话就是Docker解决了运行环境不一致所带来的问题。

资源消耗的问题

普通windows系统里运行的Linux虚拟机存在资源占用多、操作步骤冗余、启动慢等问题,但Docker就不一样。

Docker属于Linux容器的一种封装,提供简单易用的容器使用接口,相比其他虚拟机它启动快、资源占用少、体积小,所以它是目前最流行的Linux容器解决方案。

Docker的三个概念

镜像(image)

从本质上来说镜像就是一系列文件,可以包括我们应用程序的文件,也可以包括我们应用的运行环境的文件。

容器(container)

容器是Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环境,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。

仓库(docker hub)

Docker仓库可以共享和管理Docker镜像,可以把镜像传到仓库中,也可以从仓库中把镜像拉取到目的地。

镜像就相当于打包好的版本,镜像启动之后运行在容器中,仓库就是装存储镜像的地方。

Centos上安装Docker

查看是否支持

Docker要求centos系统内核版本高于3.10,所以要输入命令查看是否支持。

使用uname -r查看:

设置仓库

$ yum install -y yum-utils \

device-mapper-persistent-data \

lvm2

安装Docker

$ yum-config-manager \

–add-repo \

https://download.docker.com/linux/centos/docker-ce.repo

安装Docker Engine-Community

$ yum install docker-ce docker-ce-cli containerd.io

启动Docker

$ systemctl start docker

运行hello-world

校验Docker安装是否成功。

$ docker run hello-world

在这里插入图片描述

出现如图所示即代表安装成功。

Docker基本命令使用

·docker imgaes 查看本地的镜像

·docker pull tomcat:7.0.108 从仓库拉取镜像到本地

·docker run -d -p 8080:8080 tomcat:7.0.108

-d 代表在后台运行

-p 代表将容器的8080端口映射到主机的8080端口,前面是主机后面是容器端口

·docker ps 查看运行的容器

·docker ps -a 查看所有的容器

·docker exec -it xxxxx bash 进入容器

xxxx是使用docker ps命令查看到的容器的id
在这里插入图片描述

使用Docker部署一个简单的web应用

拉取所需的mysql镜像

1.使用命令:docker pull mysql:5.6 从仓库拉取镜像到本地;

2.使用命令:

docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6

name:给容器命令为mysql。

-e:在创建mysql容器的同时创建一个root用户,密码为123456。

3.进入这个容器查看一下:

使用命令:docker ps查看容器id后;

使用命令:docker exec -it xxx bash。
在这里插入图片描述

如上图所示代表成功。

配置tomcat镜像中的内容

1.使用命令进入tomcat容器:

在这里插入图片描述

此时,在本地浏览器访问tomcat主页是访问不了的,是因为tomcat容器中存在两个webapps文件夹。

如上图所示,所以需要把webapps.dist里的内容复制到webapps文件夹里,并删掉webapps.dist这个文件夹,此时就可以正常访问了。

2.从本地拷贝系统部署包到tomcat容器中的webapps目录下:

使用命令:

docker cp xxx c4d18fd1a170:/usr/local/tomcat/webapps

在这里插入图片描述

3.tomcat会自动部署该部署包,配置一下系统配置文件,修改一下数据库等路径以及密码,数据库地址进入mysql容器中查看,要对应mysql容器的ip地址以及端口。

在这里插入图片描述
如果容器中提示没有vi命令,可以使用如下命令:

apt-get update

apt-get install vim docker

来安装。

查看部署的系统

直接访问虚拟机的ip地址加预设的端口号以及war包文件名即可,可以正常访问并且登录,至此,在容器中部署java web应用已全部完成。
在这里插入图片描述

总结

使用docker部署应用,对于测试人员来说,无疑大幅度减轻了系统环境配置的问题,以及大大节省了部署时间。

只需要简简单单的从代码仓库拉取所需要的镜像即可完成配置,再也不用繁琐的一步一步去安装软件、安装依赖,然后一步一步配置环境,大大提高了部署工作的效率。

使用也相对简单,由此看出,不管开发测试还是运维,绝大多数人都应该会接触到Docker,所以学Docker还是很有必要的。

最后邀请想提升实力的测试人一起学习

如果你的也有很多问题想要解决,你的测试职业规划也需要一点光亮,你也想跟着大家一起分享探讨,我给你推荐一个「Python自动化测试学习交流群902061117」你缺的知识这里有,你少的技能这里有,你要的大牛也在这里……

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你

关注我的微信公众号【伤心的辣条】免费获取~

送上一句话:

世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

在这里插入图片描述

好文推荐:

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

测试岗反复跳槽,跳着跳着就跳没了…

软件测试人员该学习 Python 的七个理由

App公共测试用例梳理

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

35岁之后软件测试工程师靠什么养家?我能继续做测试!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值