【赵渝强老师】Docker三剑客

news/2024/9/13 22:36:36/ 标签: docker, 容器, 运维

在这里插入图片描述

  在Docker容器中提供了三个非常有用的工具,它们分别是:Docker Compose、Docker Machine和Docker Swarm。下面分别进行介绍。

  视频讲解如下:

Docker三剑客

【赵渝强老师】Docker的三剑客

一、容器编排工具Docker Compose

  在使用Docker部署应用程序的时候,可以通过定义Dockerfile来完成应用服务的描述,再使用docker build、docker run等命令操作容器。但是随着应用架构的不断地复杂化和微服务的应用,通常在一个系统中需要包含多个模块,而每一个模块一般情况下都会通过Docker的容器部署到多个容器中。如果每一个模块都通过手动方式来完成部署,效率是非常低。同时也不利于系统的维护和扩展。

  使用Docker Compose可以非常方便来定义和运行复杂应用系统,它是Docker提供的一个服务编排工具。Docker Compose不再使用shell脚本命令来管理容器,而是通过定义一个yml的服务描述文件来完成对Docker容器的管理。
在这里插入图片描述

  下面的yml文件将会使用Docker Compose部署大数据计算引擎Flink集群。

version: "2.1"
services:jobmanager:image: flink:1.12.7-scala_2.11expose:- "6123"ports:- "8081:8081"command: jobmanagerenvironment:- JOB_MANAGER_RPC_ADDRESS=jobmanagervolumes:- /root/flink-conf.yaml:/root/flink-conf.yamlrestart: alwaystaskmanager:image: flink:1.12.7-scala_2.11expose:- "6121"- "6122"depends_on:- jobmanagercommand: taskmanagerlinks:- "jobmanager:jobmanager"environment:- JOB_MANAGER_RPC_ADDRESS=jobmanagervolumes:- /root/flink-conf.yaml:/root/flink-conf.yamlrestart: always

二、容器远程管理工具Docker Machine

  Docker Machine是Docker官方提供的一个远程管理工具。通过使用Docker Machine,可以帮助开发人员在远程主机上安装Docker;或者在远程的虚拟主机上直接安装虚拟机并在虚拟机中安装Docker。Docker Machine还提供了相应的命令来管理这些远程的Docker环境和虚拟机。下图是官方提供的一张关于Docker Machine的图片,很形象地说明了Docker Machine的功能。
在这里插入图片描述

  Docker Machine可以在多种平台上安装使用,包括Linux、Windows和MacOS。本书重点以Linux为基础来介绍Docker Machine的安装和使用。Docker Machine使用go语言开发,并且依赖Docker的引擎。因此在使用Docker Machine之前,需要在本地先安装Docker的环境。

三、容器集群管理工具Docker Swarm

  Docker Swarm是Docker官方提供的一款集群管理工具,它的主要作用是把若干台Docker宿主机抽象为一个整体,并且通过一个入口统一管理这些Docker宿主机上的各种Docker资源。Docker Swarm和Kubernetes比较类似,但是它更加轻量级,但具有的功能也较Kubernetes少一些。有了Docker Swarm集群后,便可以实现应用程序的负载均衡与失败迁移的功能。
在这里插入图片描述

  Docker从1.12.0 版本开始,便已经将DockerSwarm集成进了Docker的引擎中。因此,Docker Swarm不需要单独进行安装。由于Docker Swarm内置了服务发现的功能,因此也不再需要进行服务发现配置了。Docker Swarm与Docker Compose类似,都是Docker官方提供的服务编排工具。但是二者所不同的是,Docker Compose 是在单个宿主机上创建多个容器,从而进行服务编排的工具;而 Docker Swarm 则可以在多个服务器或宿主机上创建容器,从而组成集群提供相应的服务。因此,从功能上看,Docker Swarm比Docker Compose更加强大。下图展示了Docker Swarm的体系架构。
在这里插入图片描述


http://www.ppmy.cn/news/1516247.html

相关文章

算法的学习笔记---按之字形顺序打印二叉树

😀前言 在算法的学习中,二叉树是一种非常基础但又十分重要的数据结构。今天,我们将讨论一种特殊的二叉树遍历方法:之字形顺序打印。这个方法要求我们以“之”字形的顺序遍历并打印二叉树的节点值,也就是第一行从左到右…

[论文阅读] mobile aloha实验部分

DP:[1] CHI C, FENG S, DU Y, et al. Diffusion Policy: Visuomotor Policy Learning via Action Diffusion[J]. 2023. Diffusion Policy: Visuomotor Policy Learning via Action Diffusion精读笔记(一)-CSDN博客 哥伦比亚大学突破性的方法- Diffusio…

【算法进阶2-动态规划】最长公共子序列、欧几里得算法-分数、RSA算法-密码于加密

1 最长公共子序列 2 欧几里得算法 2.1 欧几里得算法-分数 3 RSA算法-密码于加密 1 最长公共子序列 -个序列的子序列是在该序列中删去若干元素后得 到的序列。 例:“ABCD”和“BDF”都是“ABCDEFG”的子序列最长公共子序列(LCS)问题:给定两个序列X和Y,求X和Y长度最大…

关于AR在医疗领域创新应用

AR技术在医疗领域创新应用,旨在展示AR技术如何为医疗行业带来革命性的变化,我们可以从以下几个方面入手: 一、引言 随着科技的飞速发展,增强现实(AR)技术正逐步渗透到医疗领域的各个环节,为患…

如何评估Redis的性能

如果系统中出现了大 key、热 key 等,往往会导致 Redis 变慢,但是这个慢该如何界定?多久算慢?1秒还是3秒? 这个肯定是没有标准答案,因为这个和你的硬件设备有关。 硬件差一些,平时响应时间都是…

ClickHouse与Elasticsearch:大数据时代的两大引擎比较

目录 1. 基本介绍 ClickHouse Elasticsearch 2. 优劣势分析 ClickHouse的优势 ClickHouse的劣势 Elasticsearch的优势 Elasticsearch的劣势 3. 应用案例 4. 总结与选择建议 随着大数据技术的不断发展,企业对数据分析和实时搜索的需求也日益增长。ClickH…

Qt简介----信号与槽与信号(Signals)

以下是为上述博客生成的目录: 目录 什么是Qt?为什么选择Qt? 2.1 跨平台支持2.2 丰富的模块2.3 强大的社区支持2.4 信号与槽机制 深入理解Qt的信号与槽机制 3.1 信号与槽简介3.2 为什么使用信号与槽?3.3 使用信号与槽的基本步骤 …

CSS新增的单位ch

在CSS中,ch 是一个相对单位,它代表数字0(零)的宽度,在当前的字体和字体大小下的度量。这个单位特别适用于需要基于字符宽度进行布局的场景,比如保持文本的垂直对齐或者在元素内部确保一定的空间以容纳文本字…

【UE5】库存系统——01

目录 步骤 一、项目准备 二、制作数据表 三、与场景物体交互 五、制作可交互的物品 步骤 一、项目准备 1. 新建一个项目,使用第一人称游戏模板,勾选初学者内容包 2. 新建一个蓝图类,父类选择“Actor组件” 这里命名为“Component_Inve…

暴雨受邀参加深圳市计算机行业协会会员大会暨资源对接会

8月23日,由深圳市计算机行业协会举办的会员大会暨资源对接会在深圳圆满落幕。活动旨在促进会员企业的资源对接,促进企业间高效合作,共同迎接计算机行业的发展机遇与挑战。来自计算机行业的众多领军企业、专家学者及行业精英齐聚一堂&#xff…

【C++】13.特殊类的设计

一、请设计一个类,不能被拷贝 拷贝只会放生在两个场景中:拷贝构造函数以及赋值运算符重载,因此想要让一个类禁止拷贝,只需让该类不能调用拷贝构造函数以及赋值运算符重载即可 C98 将拷贝构造函数与赋值运算符重载只声明不定义&a…

React 使用ref属性调用子组件方法(也可以适用于父子传参)

注意:①需使用hooks函数组件 ②使用了antDesign组件库(可不用) 如何使用 父组件代码 import React, { useState, useRef, useEffect } from react; import { Button } from antd; import Child from ./components/child;export defau…

vue3上传excel并在线预览

目录 前言 安装 xlsx 依赖 XLSX.utils.sheet_to_html XLSX.utils.sheet_to_json 前言 关于实现excel文档在线预览的做法,一种方式是通过讲文档里的数据处理成html,一种是将文档处理成图片进行预览,这里使用的是第一种。 安装 xlsx 依赖 …

【C语言篇】

C语言是一种广泛使用的计算机编程语言,它以其高效、灵活和功能强大而著称。以下是一些C语言中的常见知识点: 基本语法: 变量声明与初始化 数据类型(整型、浮点型、字符型等) 控制语句(if、for、while、do…

高可用 Go 服务开发

高可用的含义是尽量减少服务的不可用(日常维护或者突发系统故障)时长,提升服务的可用时长。如何衡量一个服务的可用性呢?或许你也听说过,通常企业可能会要求服务的可用性能能够达到三个 9(也就是 99.9%)或者 4个 9 &am…

Axios介绍;前后端分离开发的介绍;YAPI的使用;Vue项目简介、入门;Elementui的使用;nginx介绍

1 Ajax 1.1 Ajax介绍 1.1.1 Ajax概述 我们前端页面中的数据,如下图所示的表格中的学生信息,应该来自于后台,那么我们的后台和前端是互不影响的2个程序,那么我们前端应该如何从后台获取数据呢?因为是2个程序&#xf…

机器学习在旅游业的革新之旅

机器学习在旅游业的革新之旅 随着科技的飞速发展,尤其是人工智能(AI)技术的广泛应用,各个行业都迎来了前所未有的变革。其中,旅游业作为全球经济的重要支柱之一,更是受益匪浅。机器学习(Machin…

AWS SAM CLI 备忘单!

安装 AWS SAM CLI brew tap aws/tap brew 安装 aws-sam-cli 验证安装 $ sam --version 升级 SAM $ brew upgrade aws-sam-cli 您需要 AWS 凭证才能在 AWS 上工作。 构建并部署简单应用程序 $ sam init→ 下载示例应用程序 $ sam build→ 构建您的应用程序 $ sam deploy --guid…

绿色积分引领:我店平台的可持续消费革命

在当今数字化浪潮的推动下,“我店”凭借其创新的环保积分系统,在消费市场中脱颖而出,逐渐改变着市场的结构。本文将详细分析该平台的竞争优势、市场策略以及它如何利用创新手段塑造未来的消费趋势。 一、环保积分:消费体验革新的关…

永磁同步电机高性能控制算法(13)后续篇—— 基于高阶扩张状态观测器(ESO)的无模型预测控制(MFPC)

1.前言 前文已经介绍过了高阶ESO相对于传统ESO的优势。 https://zhuanlan.zhihu.com/p/703039702https://zhuanlan.zhihu.com/p/703039702 但是当时搭的ESO有点问题。把公式修正之后,发现前文用的改进四阶ESO无法使用。 今天来解释一下为什么改进4阶ESO无法使用…