回顾
「3个场景快速上手Docker容器技术」
背景
在开发或测试过程中,我们常常需要不同(版本)的依赖(应用)环境。以往我们通常直接在当前环境上安装需要的依赖(应用),考虑如下几个问题,是否都遇到过:
- 新依赖(应用)部署完了,想回退/恢复到旧版本,就不好操作了;
- 同一应用的不同版本不得不借助一些第三方式工具进行管理,甚至为了方便,将不同版本的应用部署在不同的机器上;
- 开发提测了服务,但在测试环境却无法跑起来;
解决措施
有了Docker容器技术后,以上问题就统统解决了。
操作步骤
下面开始介绍如何使用Docker容器管理测试环境,本文以python依赖环境为例子:
- 我们直接从Docker官方镜像平台拉取一个python环境,并将它运行起来:
# -it参数指定以/bin/bash交互式运行 # --name参数给该容器起一个名字 docker run -it --name python docker.io/python:3.6.4 /bin/bash
- 在容器里安装我们需要的依赖或其他第三方开源库,如下面安装freetds-dev和unixodbc-dev这两个依赖:
# 其他需要的依赖可以自行安装 apt-get install freetds-dev apt-get install unixodbc-dev
- 安装完后退出容器(可以使用ctrl+p+q快捷键),但不要结束容器;
使用ctrl+p+q快捷键
- 将我们的修复提交,得到新的镜像:
# -m 参数为提交的log信息,相当于git log # 39eaa5aa7332为容器的id,可通过docker ps命令查看 docker commit -m "add freetds-dev and unixodbc-dev lib" 39eaa5aa7332 python3.6.4-dev
总结:
「Docker管理测试环境的步骤有3步」
- 运行一个基础镜像容器;
- 在容器进行修改:服务安装、依赖更新等;
- 使用docker commit命令提交我们的修改。
是不是特别方便?我们可以构建任意我们需要的镜像,并可以进行发布,与他人共享使用。在团队里使用此功能可以大大提高工作效率,还可以避免因环境不一致带来的各种问题。
下集预告
- 使用Docker提高测试执行效率
- 使用Docker管理测试数据