docker入门到入土
一:什么是docker?
docker可以理解为是采用容器技术的虚拟机。
与传统虚拟机相比:
1:它的内存大小低,只有几十m
2:启动速度快,只需要几秒就可以启动
二:测试学习docker的好处?
1:确保环境一致来复现问题。我们通常需要开发环境和测试环境不一致,导致开发不承认bug的场景,docker可以保证测试和开发环境的一致性。
2:实现环境的快速部署。工作场景来测试最新版本和回归问题单,经常因部署环境时间长浪费测试时间,通过docker可以快速部署环境。
三:docker环境搭建?
1. Docker 要求 CentOS 系统的内核版本高于 3.10,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本
2.安装依赖设置yum仓库
安装依赖:
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

设置中央仓库(国内的镜像加速网站):
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

3. 安装docker
yum -y install docker-ce doker-ce-cli containerd.io
4. 启动并加入开机启动
systemctl start docker
systemctl enable docker
5.验证是否安装成功
docker version
docker run hello-world

四:docker的镜像,容器,仓库和数据卷?相关的命令有哪些?
定义:
镜像可以理解为面向对象的类;
而容器就是运行起来的镜像,理解为面向对象的实例化类;
仓库是docker的中央仓库,即所有镜像的存放地;
数据卷是通过存储技术的lun映射把操作系统的卷资源映射到容器内部,因为容器占用小,内部只有部分操作系统的功能和命令,通过数据卷时间内外数据流通,也确保容器在删除之后文件和日志仍存在。
镜像命令:
1:查看所有镜像:
docker images

上图搜索后的列分别是:仓库集合 ,标签,镜像id,创建时间,大小
2:搜索某个镜像:
docker search xxx(镜像名称)

上图列分别为:名称,描述,下载次数,是否为官方等
3拉取镜像:
docker pull xxx(镜像名称)

4删除镜像
dokcer rmi xxx(镜像id)

如上图所示:删除所有镜像接的是先查找所有镜像再删除
5镜像的导入导出
docker load -i /root/docker-centos-httpd.tar

导出:
docker save -o 导出镜像的路径 镜像id

6 镜像修改名称
docker tag 镜像id 新镜像名:版本

容器命令
1启动容器
docker run -d --name -p 8088:8088 镜像id/镜像名称
-d:后台运行
--name:指定容器的名字
-p映射操作系统和容器的端口号

2查看容器
docker ps -qa

-q:只看容器的标识
3查看容器日志
docker logs -f

-f:以滚动的方式查看最后几行的日志
4进入容器内部
docker exec -it 容器标识 bash

5重启容器,停止容器

6删除容器
删除容器需要先停止容器才可以操作
docker rm 容器id
docker rm $(docker ps -qa) 删除所有的容器

数据卷命令:
1创建数据卷
docker volume create 数据卷的命名
2查看数据卷
docker volume inspect 数据卷的名称 ===查看单个
docker volume ls==查看所有
数据卷的默认存放的位置:/var/lib/docker/volume/
3删除数据卷
docker volume rm 数据卷名称
4数据卷的用法
docker run -d -p 8088:8088 --name ys-tomcat -v v-tomcat:/user/local/tpmcat/webapps xxx(镜像id)
只需要运行容器名称加上-v参数就可以了
五:部署集群环境如何使用docker?(docker compose)
docker compose:
是dokcer的官方开源项目,主要用来docker容器集群的快速编排,实际工作中,比如需要同时部署mysql和tomcat等容器,可以直接用docker-compose一次搞定
环境搭建:
1:www.github.com网站搜索docker-conpose选择most stars下载最新版
2:如果是linux服务器上安装,放置想要的路径后配置权限chmod 777 docker-compose
3:配置环境变量:
4:查看生效:docker-compose version
实际运用:
准备docker-compose.yml文件:(下图只写了一个容器的信息举例,可在yml文件下写多个要部署容器的信息)
执行compose命令:
1:执行yml文件。创建并启动容器:docker-compose up -d
2:关闭并删除容器:docker-compose down
3:关闭:docker-compose stop
4:启动:docker-compose start
5:重启:docker-compose restart
6:查看日志:docker-compose logs -f
六:部署项目实战
实际工作场景模拟:通常开发会给我们一个war文件,我们需要的是部署mysql和tomcat容器,并且将这个war文件放置在我们的tomcat的webspps的路径下;


浙公网安备 33010602011771号