作为测试,不仅仅会功能测试、自动化和性能测试,还有学会搭建环境
近期有测试小伙伴在看开始学习docker
docker是什么 你要知道
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
Docker的应用场景
- Web 应用的自动化打包和发布。
- 自动化测试和持续集成、发布。
- 在服务型环境中部署和调整数据库或其他的后台应用。
- 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
它的工作原理
个人整理一些常用的docker 命令 ,多敲多练习
1.拉取镜像
docker pull 镜像名 如果不指定版本默认最新 (mysql:5.6)
2.查看所有本地镜像
docker images
3.获取镜像详细信息
docker inspect id
4.删除镜像
doceker rmi -f 镜像id或者镜像名
5.运行容器,并且可以通过 exec 命令进入 CentOS 容器
docker run --name mycentos -itd 470671670cac
(加了 -d 参数默认不会进入容器)
此时想要进入容器,可以通过以下指令进入
docker attach <容器 ID>
6.查看容器的运行信息
docker ps
7.使用 docker start 启动一个已停止的容器
docker start <容器 ID>
8.停止一个容器
docker stop <容器 ID>
9.停止的容器可以通过 docker restart 重启
docker restart <容器 ID>
10.推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止
docker exec
11.删除容器
docker rm id
12容器中,很多命令没有,比如ifconfig,可以这样安装:yum install -y net-tools
14.查询现有镜像命令:
docker search jdk(或者mysql都一样)
15将容器打包成镜像
docker commit 容器名 镜像名
docker commit centos-test jdk_tom8050 .
16.修改docker容器端口映射的方法
1) docker container list –all
结果中的CONTAINER ID列为容器id
2)查看容器hash,<容器id>由步骤1)获得
docker inspect <容器id> | grep Id
3) 停止运行中的容器
docker stop <容器id>
3) vim /var/lib/docker/containers/[容器hash]/hostconfig.json,(有人提到,如果config.v2.json里面也记录了端口,也要修改)
编辑容器配置文件,<容器hash>由步骤2)获得
修改PortBindings参数配置,宿主机8001端口映射容器80端口示例:
“PortBindings”:{“80/tcp”:[{“HostIp”:””,”HostPort”:”8001″}]},”
vi /var/lib/docker/containers/容器名/config.v2.json
"Ports":{"25/tcp":[{"HostIp":"0.0.0.0","HostPort":"25"}],"443/tcp":[{"HostIp":"0.0.0.0","HostPort":"443"}],"80/tcp":[{"HostIp":"0.0.0.0","HostPort":"80"}],"8080/tcp":null},
主要是修改这个两个文件
4)重新启动docker引擎
systemctl restart docker
5)重新启动docker容器
docker start <容器id>
掌握上面的就足够了,够你在工作中使用。