docker
虚拟化技术
vmware workstation(属于个⼈学习使⽤),主要是⽤于windows平台,创建虚拟机(安装系统企业版虚拟化
vmware esxi虚拟化⼯具,⾼性能服务器结合,进⾏服务器资源虚拟化 linux下的虚拟机⼯具,kvm⼯具(创建虚拟机+安装各种系统)
docker的底层原理
学习docker的核⼼要素、搞明⽩、镜像image、容器!
我们在使用虚拟机时安装的系统分为两个部分。一部是liunx内核,另外一部分则是系统的发行版。
那么大家都知道的是docker是基于镜像加载到容器中运行这么一个工作步骤,那docker的镜像是什么一种构造呢?
简单来说docker的镜像其实就是系统的发行版
当一个镜像载入容器运行时,它的内核其实是基于宿主机的内核,镜像本身是没有linux内核的。这样就可以实现同一个linux内核可以运行多个发行版的镜像,如ubuntu,centos等等。
那么docker具体解决了那些问题呢?
首先docker解决了环境的兼容问题,在容器运行linux发行版和各种软件
环境十分干净,你安装的所有内容都在容器里,不影响宿主机
如果想把mysql容器内的数据配置全都迁移到数据库上,只需要提交该容器,生成镜像,镜像放到服务器上,docker run运行即可。
怎么理解docker镜像的分层
以下用两张图简单的介绍docker镜像的分层逻辑
doker的使用和简单命令介绍
首先我们可以用docker pull这个命令去pull一个你想要的镜像
然后使用docker load命令载入,并使用docker images查看已载入镜像
docker rmi hello-world 删除镜像
docker image save centos:7.8 导出镜像
下面用几个docker run执行命令简单介绍一下docker run
docker run -d --rm --name pythonav centos:7.8.2003 ping pythonav.cn
-d 参数,让容器在后台跑着(针对宿主机⽽⾔)
--rm 容器挂掉后⾃动被删除
--name 给容器起个名
docker exec -it f2598cb26363 bash
exec指令⽤于进⼊容器空间内
docker run -d --name zzh -p 85:80 nginx
后台运⾏nginx容器,且起个名字,且端⼝映射宿主机的85端⼝,访问到容 器内的80端⼝