docker容器技术

介绍:
docker起源于2013年
docker是一个开源的应用容器引擎,基于GO语言开发,docker可以让开发者打包者们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的系统

docker优点
1、docker 可以用来快速交付应用,加快打包时间,加快测试,加快发布,缩短开发及运行代码之间的周期
2、复杂环境管理,应用隔离:不同软件运行环境兼容依赖问题,开发环境/测试环境/线上环境保持一致
3、轻量级:对于系统内核来说,一个docker只是一个进程,一个系统可以运行上千个容器


1630852308(1).jpg

docker与虚拟机的区别
1、容器与容器之间只是进程的隔离,而虚拟机是完全的资源隔离
2、虚拟机的启动可能需要分钟级别,docker启动是秒级或者更短
3.容器使用宿主机操作系统的内核,而虚拟机使用完全独立的内核

docker架构


1630852653(1).jpg

概念
1、docker镜像: docker images, 每一个镜像都可能依赖一个或多个下层的镜像组成的另一个镜像,aufs文件系统
2、docker仓库: docker registry,集中存放镜像的地方
3、docker容器:docker containers,镜像运行后的进程

docker常用命令
1、docker 版本信息: docker version
2、docker 系统信息: docker info
3、查看所有镜像: docker images
4、搜索镜像: docker search busybox
5、拉取下载: docker pull busybox:latest
6、导出: docker save busybox > busybox.tar
7、导入: docker load < busybox.tar
8、删除: docker rmi busybox.tar
9、更改镜像名: docker tag busybox:latest busybox:test
10、查看镜像创建历史: docker history busybox
11、运行容器:docker run -d --name=busybox busybox:latest ping 114.114.114.114
12、查看运行的容器: docker ps docker ps -a
13、查看容器中运行的进程: docker top busybox
14、查看资源占用: docker stats busybox
15、容器: docker start/restart/stop/kill busybox
16、暂停容器:docker pause /unpause busybox
17、 强制删除容器: docker rm -f busybox
容器管理
18、执行命令: docker exec -it busybox ls
19、复制文件: docker cp busybox:/etc/hosts hosts
20、查看容器日志:docker logs -f busybox
21、查看容器/镜像的元信息:docker inspect busybox
格式化输出: docker inspect -f '{{.Id}}' busybox
22、查看容器内文件结构:docker diff busybox

搭建web服务器Nginx
Nginx简介
Nginx是一个异步的web服务器,主要提供web服务,反向代理,负载均衡和HTTP缓存功能,使用C语言开发
1、 拉取: docker pull nginx:1.17.9
2、 运行:docker run -d --name nginx -p 8088:80 nginx:1.17.9
3、挂载目录: docker run -d --name nginx1 -p 8089:80 -v
${PWD}/html:/usr/share/nginx/html nginx:1.17.9

搭建测试用例管理平台 testlink

testlink 简介
testlink 是基于web的测试用例管理系统,主要功能是:测试项目管理、产品需求管理、测试用例管理、测试计划管理、测试用例的创建、管理和执行,并且还提供了统计功能
1、 部署数据库
容器网络: docker network create testlink
运行数据库:
docker run -d --name mariadb -e MARIADB_ROOT_PASSWORD=mariadb -e MARIADB_USER=bn_testlink -e MARIADB_PASSWORD=bn_testlink -e MARIADB_DATABASE=bitnami_testlink --net testlink -v ${PWD}/mariadb:/bitnami bitnami/mariadb:10.3.22

运行testlink:
docker run -d --name testlink -p 8088:8080 -p 8443:8443 -e TESTLINK_DATABASE_USER=bn_testlink -e TESTLINK_DATABASE_PASSWORD=bn_testlink -e TESTLINK_DATABASE_NAME=bitnami_testlink --net testlink -v ${PWD}/testlink:/bitnami bitnami/testlink:1.9.20

docker-compose简介
docker-compose是用于定义和运行多容器的docker应用程序的工具,通过compose,可以使用yaml文件来配置应用程序的服务
compose的使用一般分为三步:
1、使用dockerfile定义应用程序的环境,以便可以再任何地方复制它
2、在docker-compose.yal中定义组成应用程序的服务,以便他们可以再隔离的环境中一起运行
3、运动docker-compose up ,然后compose启动并运行您的整个应用程序

docker-compose 安装
1、macOS、Windows系统使用的docker desktop 默认已安装
2、LINUX系统:
1、 htts://github.com/docker/compose/releases
2、 curl 'https://github.com/docker/compose/releases/download/1.25.4/docker-compose-(uname -m) -o /usr/local/bin/docker-compose'
3、 更改权限: chmod +x /usr/local/bin/docker-compose
4、 查看版本: docker-compose version

docker-compose常用命令
1、查看配置:docker-compose config
2、后台启动:docker-compose up -d
3、构建镜像:docker-compose build
4、下载镜像:docker-compose pull
5、运行的:docker-compose ps
6、进程:docker-compose top
7、启动: docker-compose start
8、停止:docker-compose stop
9、暂停: docker-compose pause
10、取消暂停:docker-compose unpause

docker registry简介
1、https://github.docker.com/registry
2、docker registry 是存储docker image的仓库,运行push、pull、search时是通过docker daemon与docker registry通信,有时间使用docker hub这样的公共仓库可能不方便,我们可以通过registry创建一个本地仓库

你可能感兴趣的:(docker容器技术)