docker-compose单机容器集群编排

news2024/11/27 5:35:38

docker-compose

dockerfile模板文件可以定义一个独立的应用容器,如果需要多个容器就需要服务编排。服务编排有很多技术方案

 docker-compose开源的项目实现对容器集群的快速编排

docker-compose将所管理的容器分为三层,分别为工程,服务,以及容器。docker-compose运行目录下的所有文件(docker-pompos.yum,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为每个当前目录名。一个共工程当中包含多个服务,每个服务中定义了容器的运行的镜像,参数,依赖、当一个服务中包括多个容器实例,docker-compose的工程默认配置文件默认为docker-compose.yml ,可以通过环境变量compose_file或-f自定义配置文件其定义了多个服务和容器

yaml文件格式及编写注意事项 

yaml是一个标记语言,他可以很直观的展示数据序列化格式,可读性高。类似于json数据描述语言,语法比json简单的多。yaml数据结构通过缩进来表示,连续的项目通过减号来表示,键值对用冒号分隔,数组中括号[]括起来,hash用花括号{}括起来

使用yaml时需要注意

大小写敏感

通过缩进表示层级关系

不支持tab键缩进,只能使用空格缩进

缩进的空格数目不重要,但是相同层级左对齐

#注释

符号字符后缩进1个空格如冒号:逗号, 横杠- 

如果包含特殊字符用(' ')引起来会作为普通字符串处理,双引号(“ ”);特殊字符做为本身想表示的意思name: "Hi,\nTom"

数据结构

对象映射:键值对的字典

animal:pets

序列数组:一组按次序排列的列表

pets:

- Cat

- Dog

- Goldfish

pets: ["Cat","Dog","Goldfish"]

布尔值

debug:true

debug:false

示例

# yaml 格式

true和false系统默认是布尔型

json格式及docker生产经验

| 保留文本中的换行

3。 Docker Compose配置常用字段字段

字段- - -描述

build   指定Dockerfile 文件名,要指定Dockerfile文件需要在build标签的子级标签中使用dockerfile标签指定

dockerfile  构建镜像上下文路径

context  可以是 dockerfile 的路径,或者是指向 git 仓库的 url 地址

image  指定镜像

command 执行命令,覆盖容器启动后默认执行的命令

container_name  指定容器名称,由于容器名称是唯一的,如果指定自定义名称,则无法scale指定容器数量

deploy  指定部署和运行服务相关配置,只能在 Swarm 模式使用

environment  添加环境变量

networks  加入网终,引用顶级networks下条目

network_mode  设置容器的网络模式,如 host,bridge,..

ports  暴露容器端口,与 -p 相同,但端口不能低于 60

volumes  挂载一个宿主机目录或命令卷到容器,命名卷要在顶级 volumes 定义卷名称

volumes_from  从另一个服务或容器挂载卷,可选参数 :ro 和 :rw,仅版本‘2’ 支持

hostname  容器主机名

sysctls  在容器内设置内核参数

links  连接到另外一个容器,- 服务名称[:服务别名]

privileged  用来给容器root权限,注意是不安全的,true | false

restart  设置重启策略,no,always, on-failure, unless-stopped

no,默认策略,在容器退出时不重启突器。

always,在容器退出时总是重启究器。

on-failure,在容器非正常退出时 (退出状态非0),才会重启容器

on-failure:3,在容器非正常退出时重启突器,

最多重启3次。

unless-stopped,在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器

 

 volumes_from  从另一个服务或容器挂载卷,可选参数 :ro 和 :rw,仅版本‘2’ 支持如果在版本3中也想实现从另一个服务或容器挂载卷可以

创建一个顶级的命名卷volumes:

db-data:

以命名卷为通道完成两个逻辑卷通信

networks:定义不同的网络域

不同网络域不能通信

 docker compose ps查看用户名 创建时不要docker-compose -f docker-compose.yml -p -d 无-p项目名做名字 -p指定否则查找docker compose ps查找时也要指定

docker logs nginx-compose查看

docker-compose

command:镜像后面的启动命令

两个容器互相从另一个服务挂载

或者直接挂载宿主机的 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/620932.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jenkins+RF持续集成测试(三) 生成测试报告并发给指定人

在上一篇《定时更新SVN完成构建》中讲了定时从SVN拉取最新的测试脚本,并自动构建的过程。这篇我将介绍怎么配置测试robot报告,并发送给指定人群。 1、要发给指定人,首先需要在job配置,构建后操作中增加“Editable Email Notificat…

day3 ARM寄存器组织

目录 寄存器 ARM寄存器 专用寄存器 CPSR寄存器 寄存器 概念:寄存器是处理器内部的存储器,没有地址; 作用:一般用于暂时存放参与运算的数据和运算结果; 分类:包括通用寄存器、专用寄存器、控制寄存器&…

腾讯云数据库2022下半年本地部署市场收入同比增速达110%,远超市场平均水平

6月7日,记者获悉,据全球领先的IT市场研究和咨询公司IDC发布的《2022年下半年中国关系型数据库软件市场跟踪报告》显示,在Top 5厂商中,腾讯云数据库整体收入同比增速、本地部署模式收入同比增速均位列第一。 具体来看,…

ChatPPT一键制作PPT,效果拉满~

💧 C h a t P P T 一 键 制 作 P P T , 效 果 拉 满 ! \color{#FF1493}{ChatPPT一键制作PPT,效果拉满!} ChatPPT一键制作PPT,效果拉满!💧 🌷 仰望天空&#xf…

网络安全面试题集及答案整理汇总(2023最新版详细)

前言 随着国家政策的扶持,网络安全行业也越来越为大众所熟知,想要进入到网络安全行业的人也越来越多。 为了拿到心仪的Offer之外,除了学好网络安全知识以外,还要应对好企业的面试。 作为一个安全老鸟,工作这么多年&…

如何安装intellij IDEA

想要自学编程,又不知道从那开始,百度找起来比较费劲,现在有个比较便捷的途径,就是直接问chatgpt。 在询问chatgpt后,得知目前比较流行的开发工具是intellij IDEA,然后问了chatgpt怎么下载这个工具&#xf…

当Python程序员好不好?我用自己的亲身经历告诉大家

最近有很多人问我是否考虑转行成为Python程序员,包括一些非计算机专业的学生和工作了几年的人。对于这个问题,我不太好给出建议,只能以我的个人经历来谈一下。我个人认为,我处于整个程序员群体的中位水平线上,因此大家…

开源飞行控制库QGroundControl认识

QGroundControl provides full flight control and vehicle setup for PX4 or ArduPilot powered vehicles. It provides easy and straightforward usage for beginners, while still delivering high end feature support for experienced users. QGroundControl为PX4或Ard…

分布式事务解决方案详解

分布式事务 分布式协议 XA规范 XA(eXtended Architecture)标准是X/Open 组织针对分布式事务(DTP)处理的规范,它描述了全局事务管理器和本地资源管理器之间的接口,允许多个资源在同一分布式事务中访问。DT…

Linux——内存和DMA(二)

目录 六、动态内存实例 七、 I/0内存 八、DMA原理及映射 8.1 DMA 工作原理 8.2 DMA映射 1.一致性DMA映射 2. 流式DMA映射 3,分散/聚集映射 4.DMA池 5,回弹缓冲区 九、 DMA统一编程接口 十、习题 书接上回: http://t.csdn.cn/n35…

Redis(二)——Redis持久化与主从架构详解

Redis持久化与主从架构详解 Redis的持久化RDB快照(snapshot)(redis默认持久化方式)bgsave的写时复制(COW)机制save与bgsave对比 AOF(append-only file)配置 Redis 多久才将数据 fsync 到磁盘一次AOF重写 如…

网站创建百度百科词条的方法是什么?

百度百科是一个十分全面的在线百科全书,如果您是某个企业、品牌,或是某个行业或领域的专家,想要在百度百科上为自己的网站创造更多曝光率和权威性,那么在百度百科上创建词条就是一项非常有效的方法。这里需要注意的是创建网站类的…

一、OkHttp_网络请求流程

前言: 一直以来总想对android常用的某个第三方库深入研究一下,每次看完源码之后总是经常的忘记。 为了方便对三方库快速阅读,特此以写文章方式记述。 就从OKHttp开始吧。 再阅读源码之前,要明确 OKHttp是用来做什么的?…

交互原型图设计必备软件,这5款太赞了

如果你是UI/UX设计师,你肯定会在工作中涉及到交互原型图的设计。 在设计交互原型图时,我们通常需要找到一些适合自己的交互原型图设计软件来制作高质量的交互原型图。 与您分享5款易于使用的交互原型图设计软件 1.即时设计 即时设计是国内UI/UX设计师…

用代码点亮儿童节烟花游乐园

文章目录 概述代码烟花效果爆炸效果 结果 概述 尊敬的读者朋友们,六一儿童节到了!这是一个属于孩子们的节日,为了庆祝这个特殊的日子,我们将以计算机代码为媒介,打造一个虚拟的烟花游乐园,让我们一起点亮这…

K8s in Action 阅读笔记——【12】Securing the Kubernetes API server

K8s in Action 阅读笔记——【12】Securing the Kubernetes API server 12.1 Understanding authentication 在上一章中,我们提到API服务器可以配置一个或多个认证插件(授权插件也是同样的情况)。当API服务器接收到一个请求时,它…

【LeetCode热题100】打卡第15天:搜索旋转排序数组在排序数组中查找元素的第一个和最后一个位置

文章目录 【LeetCode热题100】打卡第15天:搜索旋转排序数组&在排序数组中查找元素的第一个和最后一个位置⛅前言 搜索旋转排序数组🔒题目🔑题解 在排序数组中查找元素的第一个和最后一个位置🔒题目 【LeetCode热题100】打卡第…

企业为什么要统一身份认证管理?

身份认证管理(Identity and Access Management,IAM)是一套用来控制用户获取网络系统或应用访问权限的技术与流程。主要包括: 1. 身份管理:创建、删除和维护用户账号,管理用户关键信息如姓名、电子邮件等。这是进行访问控制的基础。 2. 认证管…

Spring Boot 统一功能处理

✏️作者:银河罐头 📋系列专栏:JavaEE 🌲“种一棵树最好的时间是十年前,其次是现在” 目录 ⽤户登录权限效验Spring Boot 拦截器自定义拦截器将自定义拦截器加入到系统配置 拦截器实现原理 统一异常处理创建一个异常处…

金融投资心得(个人领悟篇)

金融投资心得 前言金融还是要参与的如何参与金融始终相信中国经济把控风险选股技巧不赚最后一块"铜板"多学习,学会筛选有用消息 其它思考推荐学习我的投资 前言 本人从2015年开始接触金融,不知不觉跟金融已经打了8年交道了,一路走…