docker-compose替代者

Process Compose 是一个简单而灵活的调度程序和编排器,用于管理非容器化应用程序。

它深受docker-compose的启发,但不需要容器。不必处理 docker 文件、卷定义、网络和 docker 注册表

配置语法尝试遵循 docker-compose 规范,进行了一些小的添加和大量的删减。

特征:
进程执行(并行或/和串行)
处理依赖关系和启动顺序
进程恢复策略
手动进程[重新]启动
处理参数bash或zsh样式(或定义您自己的 shell)
每个进程和全局环境变量
每个进程或全局(单个文件)日志
健康检查(活性和准备情况)
终端用户界面 (TUI) 或 CLI 模式
分叉(服务或守护进程)进程
REST API(OpenAPI 又名 Swagger)
日志缓存
既可以作为服务器又可以作为客户端
可配置的快捷键
合并配置文件
命名空间
运行一个进程的多个副本

并行启动:

processes:
process1:
description: This process will sleep for 2 seconds
command: "sleep 3" process2:
description: This process will sleep for 3 seconds
command: "sleep 3"'

串行启动

processes:
process1:
command: "sleep 3" depends_on:
process2:
condition: process_completed_successfully # or "process_completed" if you don't care about errors
process2:
command: "sleep 3" depends_on:
process3:
condition: process_completed_successfully # or "process_completed" if you don't care about errors

进程的多个副本
您可以通过添加参数来运行进程的多个副本processes.process_name.replicas(默认值:1)

processes:
process_name:
command: "sleep 2" log_location: ./log_file.{PC_REPLICA_NUM}.log  # <- {PC_REPLICA_NUM} will be replaced with replica number. If more than one replica and PC_REPLICA_NUM is not specified, the replica number will be concatenated to the file end.
replicas: 2

指定工作目录

processes:
process1:
command: "ls -laF --color=always" working_dir: "/path/to/your/working/directory"

定义流程依赖关系

processes:
process2:
depends_on:
process3:
condition: process_completed_successfully
process4:
condition: process_completed_successfully

后台(独立)进程

processes:
nginx:
command: "docker run -d --rm --name nginx_test nginx" # note the '-d' for detached mode
is_daemon: true # this flag is required for background processes (default false)
shutdown:
command: "docker stop nginx_test" timeout_seconds: 10 # default 10
signal: 15 # default 15, but only if command is not defined or empty

退出时自动重新启动

processes:
process2:
availability:
restart: on_failure # other options: "exit_on_failure", "always", "no" (default)
backoff_seconds: 2 # default: 1
max_restarts: 5 # default: 0 (unlimited)

活性探针

processes:
nginx:
command: "docker run -d --rm -p80:80 --name nginx_test nginx" is_daemon: true
shutdown:
command: "docker stop nginx_test" signal: 15
timeout_seconds: 5
liveness_probe:
exec:
command: "[ $(docker inspect -f '{{.State.Running}}' nginx_test) = 'true' ]" working_dir: /tmp # if not specified the process working dir will be used
initial_delay_seconds: 5
period_seconds: 2
timeout_seconds: 5
success_threshold: 1
failure_threshold: 3

就绪探针

processes:
nginx:
command: "docker run -d --rm -p80:80 --name nginx_test nginx" is_daemon: true
shutdown:
command: "docker stop nginx_test" readiness_probe:
http_get:
host: 127.0.0.1
scheme: http
path: "/" port: 80
initial_delay_seconds: 5
period_seconds: 10
timeout_seconds: 5
success_threshold: 1
failure_threshold: 3

https://www.jdon.com/70235.html

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

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

相关文章

【python】——组合数据类型(单选练习题)

&#x1f383;个人专栏&#xff1a; &#x1f42c; 算法设计与分析&#xff1a;算法设计与分析_IT闫的博客-CSDN博客 &#x1f433;Java基础&#xff1a;Java基础_IT闫的博客-CSDN博客 &#x1f40b;c语言&#xff1a;c语言_IT闫的博客-CSDN博客 &#x1f41f;MySQL&#xff1a…

达索系统3DEXPERIENCE WORKS 2024 结构仿真功能增强

simulia结构仿真是什么&#xff1f; 不仅能对结构进行力学、热学、声学等多学科计算&#xff0c;辅助于设计方案的优化&#xff1b;还能采用数字化技术模拟产品性能&#xff0c;大幅节约试验和样机迭代成本。达索系统3DEXPERIENCE WORKS 2024 结构仿真为企业提供随需应变、精准…

centos7-docker安装与使用

文章目录 一、docker简介1.1docker应用场景1.2docker的优点1.2.1快速&#xff0c;一致地交付应用程序1.2.2响应式部署和扩展1.2.3在同一硬件上运行更多工作负载 1.2docker的架构 二、docker的安装2.1新系统的环境搭建2.1.1更换yum源 2.2安装docker与卸载2.2.1yum安装docker2.2.…

看懂YOLOv7混淆矩阵的含义,正确计算召回率、精确率、误检率、漏检率

文章目录 1、准确率、精确率、召回率、误报率、漏报率概念及公式1.1 准确率 Accuracy1.2 精确率 Precision1.3 召回率 Recall1.4 F1-Score1.5 误检率 false rate1.6 漏检率 miss rate 2、YOLOv7混淆矩阵分析 1、准确率、精确率、召回率、误报率、漏报率概念及公式 重点参考博文…

唯创知音WT588F02A-16S录音语音芯片在宠物喂食器中的应用:小芯片,大功能

在现代社会中&#xff0c;宠物已经成为人们生活中的一部分&#xff0c;而宠物喂食器作为宠物养护的重要工具&#xff0c;也越来越受到人们的关注。为了满足人们对宠物喂食器的多样化需求&#xff0c;唯创知音的WT588F02A-16S录音芯片在其中发挥着重要作用。 唯创知音的WT588F0…

.net7.0中把exe和dll分开打包

之前写过 C#把dll分别放在指定的文件夹_wpf core dll 放文件夹-CSDN博客 C#把dll打包到exe_c# 打包exe_故里2130的博客-CSDN博客 这都是老技术了&#xff0c;可以进行参考。 现在的.netcore系列有单独支持把exe和dll分开打包的功能了&#xff0c;当然也支持.net7.0和.net8.…

戴西软件成功收购美国知名 CAE 软件公司 ETA 的VPG汽车仿真软件

戴西&#xff08;上海&#xff09;软件有限公司&#xff08;以下简称“戴西”&#xff09;荣幸宣布成功收购全球著名CAE软件开发商ETA公司&#xff08;Engineering Technology Associates, Inc.&#xff09;旗下的汽车碰撞安全仿真软件VPG及相关技术成果&#xff08;Virtual Pr…

Python与设计模式--备忘录模式

23种计模式之 前言 &#xff08;5&#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、&#xff08;11&#xff09;策略模式、责任链模式、命令模式、中介者模…

Phpstudy v8.0/8.1小皮升级Apache至最新,同时升级openssl版本httpd-2.4.58 apache 2.4.58

1.apache官网下载最新版本的apache 2.4.58 2.phpstudy下apache停止运行&#xff0c;把原来的Apache文件夹备份一份 复制图中的文件替换apache目录下文件 3.phpstudy中开启apache

PyTorch:模型加载方法详解

PyTorch模型加载方法汇总 随着深度学习的快速发展&#xff0c;PyTorch作为一种流行的深度学习框架&#xff0c;其模型加载方法也备受关注。本文将介绍常用的PyTorch模型加载方法&#xff0c;并汇总不同方法的关键点&#xff0c;帮助读者更好地理解和应用。 一、PyTorch模型加载…

Ps:子路径的上下排列以及对齐与分布

不论是一个形状图层&#xff08;或图层的矢量蒙版&#xff09;上的多个形状还是同一路径层上多个路径&#xff0c;只要对应“路径”面板的一个路径层&#xff0c;可以将这些路径称为该路径层的“子路径”&#xff0c;也称为“组件”。 当一个路径层上有两个以上的子路径时&…

Python与设计模式--中介者模式

23种计模式之 前言 &#xff08;5&#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、&#xff08;11&#xff09;策略模式、责任链模式、命令模式、中介者模…

uniapp微信小程序中阻止事件冒泡

开发场景&#xff1a;列表中展示地块的数据信息&#xff0c;用户可以点击列表进入地块的详情界面&#xff0c;也可以点击列表中的星星按钮进行收藏 遇到的问题&#xff1a;每次点击星星的时候&#xff0c;都会触发父级的点击事件&#xff0c;从而进入到详情界面 原本的代码&am…

docker镜像管理命令

镜像管理命令 docker build : 命令用于使用 Dockerfile 创建镜像 docker build [OPTIONS] PATH | URL | - OPTIONS说明&#xff1a; --add-host :向hosts文件中添加自定义 host:ip 映射 --build-arg[] :设置镜像创建时的变量&#xff1b; --cache-from :指定镜像用作当前构建…

STK Components 二次开发- 卫星地面站

前期卫星地面站创建已经说过&#xff0c;本次说一下卫星和地面站可见性时卫星名称和轨迹线变色问题。 1.创建卫星 // Get the current TLE for the given satellite identifier. var tleList TwoLineElementSetHelper.GetTles(m_satelliteIdentifier, JulianDate.Now);// Us…

MFC容器中使用标准库容器,内存违规

问题描述 CArray中元素不管是直接或间接使用标准库容器&#xff0c;会引发内存违规。与CArray内部实现有关。测试代码如下&#xff1a; struct tagData {std::vector<int> m_Values; }; CArray<tagData, tagData> mIntVecArray; {tagData mData;mData.m_Values.p…

类和对象——(2)类

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 只虽然夜晚很长&#xff0c;但天…

SpringBoot配置跨域的机种方式 spring跨域的几种方式

SpringBoot配置跨域的机种方式 spring跨域的几种方式 1、注解方式2、实现 WebMvcConfigurer 接口3、使用 FilterRegistrationBean 过滤器 (推荐) 1、注解方式 使用 CrossOrigin注解标注在 Controller或者 Mapping RestController CrossOrigin RequestMapping("/ctro&quo…

Spark_Spark高阶特性

wscg filter导致断链 Codegen 向量化 simdjson Orc Parquet 支持批量读取 spark本身对parquet支持比较好&#xff0c;因为parquet

“PredictingChildrenHeight“ app Tech Support(URL)

Using our app, we can predict a childs height through formulas. Because there are many factors that affect a childs height, it is for reference only. ​​​​​​​ If you have any questions, you can either leave a message or send the questions to our em…