Docker基础

网友投稿 660 2022-11-18

docker基础

Docker基础

Docker入门

本篇文档用于了解docker是什么,有些什么内容,不涉及docker指令用法

docker

将环境与程序一起发布,解决环境一致性的问题(docker镜像)docker的核心思想,隔离,打包装箱,每个箱子相互隔离,通过隔离,充分利用服务器资源(docker容器

docker整体结构示意图

Docker与VM(虚拟机)

为什么要用docker而不是VM?因为docker比VM要小的多,也快得多Docker比VM小,快的原因:

docker指令

Docker容器数据

Docker文件系统

UnionFS(联合文件系统)

Docker网络

Docker网络原理

在容器中35是eth0的index,36是和它pair(即Linux)的veth的index在linux中36是veth的index,35是和它pair(即容器)的eth0的index

既然docker会默认给容器分配ip,那么容器重启后ip就会改变,如何让其他程序找到这个重启后的服务呢?

固定端口号,然后用宿主机IP来访问使用--link来使容器以服务名访问其他容器(已经不建议使用了)实际上就是在容器启动时读取想要访问的服务的ip,然后修改hosts文件,将读取到的ip与服务名写入到了当前文件的hosts文件中问题:当前容器可以使用目标服务名访问,但目标服务不能通过当前容器的服务名访问过来如果目标服务重启ip发生了改变,则当前容器不重启则无法访问自定义网络docker0特点:默认,域名不能访问,--link可以打通使用自定义网络可以弥补使用docker0导致的服务名无法ping通的问题,且可以使用自定义网络来达到不同集群使用不同网络,确保集群的安全与健康

Docker Compose & Swarm

Docker Compose

Docker Compose可以轻松高效的管理容器,定义运行多个容器只需一份文件即可(相当与一份部署文档,只不过这份文档是给docker读的,docker根据这份文档那启用容器)使用Docker Compose的前提是装有Compose组件

Docker Swarm

部署docker swarm集群时,需要保证管理节点是大于1的奇数个,只有这样集群才能通过Raft确认集群的存活情况

Raft:一致性算法swarm中的Raft协议:保证大多数节点存活才可以用(至少>1),因为是大于一,因此swarm集群至少要大于三台manager,这样才能保证即使挂掉一个manager也能让集群正常工作(如果只有两个manager,挂掉一台后,剩余存活节点就是=1,不满足集群工作条件)简单的来说就是剩下的manager节点无法判断是自己离线还是其他的离线

工作原理

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot下载文件的实现及速度对比
下一篇:Docker系列01—容器的发展历程---Docker的生态圈
相关文章

 发表评论

暂时没有评论,来抢沙发吧~