docker

一、名词解释

1、容器:

使用Dockerfile定义容器,Dockerfile定义容器内环境中发生的事情。 对网络接口和磁盘驱动器等资源的访问在此环境中进行虚拟化,该环境与系统的其他部分隔离,因此您需要将端口映射到外部世界,并具体说明要“复制”到哪些文件 那个环境。 但是,执行此操作后,您可以预期此Dockerfile中定义的应用程序的构建在其运行的任何位置都会完全相同。

2、镜像:

2.1生成
运行 build command. This creates a Docker image。
docker build --tag=friendlyhello .
2.2推送到远程 docker hub

3、服务(多容器):

在分布式应用程序中,应用程序的不同部分称为“服务”。例如,如果您想象一个视频共享站点,它可能包括一个用于在数据库中存储应用程序数据的服务,一个用户在上传内容后在后台进行视频转码的服务,一个用于前端的服务,等等。
服务实际上只是“生产中的容器”。服务只运行一个映像(img),但它编码图像的运行方式 - 应该使用哪些端口,应该运行多少个容器副本,以便服务具有所需的容量,以及等等。扩展服务会更改运行该软件的容器实例的数量,从而为流程中的服务分配更多计算资源。
幸运的是,使用Docker平台定义,运行和扩展服务非常容易 - 只需编写一个docker-compose.yml文件即可。

4、swarm

将此应用程序部署到群集上,在多台计算机上运行它。 通过将多台机器连接到称为swarm的“Dockerized”集群,可以实现**多容器,多机器应用程序 **。
swarm是一组运行Docker并加入群集的计算机。在此之后,您继续运行您习惯使用的Docker命令,但现在它们由群集管理器在群集上执行。群中的机器可以是物理的或虚拟的。加入群组后,它们被称为节点。
Swarm管理器可以使用多种策略来运行容器,例如“emptiest node” - 它使用容器填充利用率最低的机器。或“global”,它确保每台机器只获得指定容器的一个实例。您指示swarm管理器在Compose文件中使用这些策略,就像您已经使用的那样。
Swarm managers是群中唯一可以执行命令的机器,或授权其他机器作为工作者加入群集。 Workers只是在那里提供capacity,并且没有权力告诉任何其他机器它能做什么和不能做什么。
swarm之前,您一直在本地计算机上以单主机模式使用Docker。但是Docker也可以切换到swarm模式,这就是使用群集的能力。立即启用群集模式使当前计算机成为群集管理器。从那时起,Docker就会运行您在管理的swarm上执行的命令,而不仅仅是在当前机器上。
swarm由多个节点组成,可以是物理或虚拟机。 基本概念很简单:运行docker swarm init以启用swarm模式并使当前机器成为swarm管理器,然后在其他机器上运行docker swarm join以使它们作为worker加入swarm。

5、stack:

分布式应用程序层次结构的顶层:堆栈。 堆栈是一组相互关联的服务,它们共享依赖关系,并且可以协调和缩放在一起。 单个堆栈能够定义和协调整个应用程序的功能(尽管非常复杂的应用程序可能希望使用多个堆栈)。
从service开始,当您创建Compose文件并使用docker堆栈部署时,您在技术上一直在使用堆栈。 但这是在单个主机上运行的单个服务堆栈,这通常不会在生产中发生。stack可以使多个服务相互关联,并在多台计算机上运行它们。

二、关系

关系层次

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值