Docker容器的作业调度程序,通过容器标签配置。

deck-chores的Python项目详细描述


甲板杂务图片::https://img.shields.io/docker/lauls/funkyfuture/deck chores.svg
:目标:https://hub.docker.com/r/funkyfuture/deck chores/

…图片::https://images.microbadger.com/badges/image/funkyfuture/deck chores.svg
:目标:https://microbadger.com/images/funkyfuture/deck chores

图像::https://img.shields.io/pypi/v/deck chores.svg
:目标:https://pypi.org/project/deck chores/

**一个Docker容器的作业调度程序,通过容器标签配置。**

*文档:https://deck chores.readthedocs.io
*图像存储库:https://hub.docker.com/r/funkyfuture/deck-chores
*代码库:https://github.com/funkyfuture/deck-chores
*问题跟踪程序:https://github.com/funkyfuture/deck-chores/issues
*免费软件:isc许可证



功能
--


-定义在容器con中运行的常规作业带容器的文本和可选的带图像的文本
标签
-使用日期、间隔和类cron触发器
-设置每个作业同时运行实例的最大值
-将每个服务的作业调度限制为一个容器
-多体系结构图像支持"amd64"和"armv7l"平台表单,不涉及模拟器



示例
----


假设您希望每天转储一次wordpress的数据库。这里有一个"docker compose.yml"`
,它定义了一个将由*deck chores*处理的作业:

……代码块::yaml


version:'2'


services:
wordpress:
image:wordpress
mysql:
image:mariadb
volumes:
-./database_dumps:/dumps
labels:
deck-chores.dump.command:sh-c"mysqldump"--所有数据库>;/dumps/dump-$$(date-idate)"
deck-chores.dump.interval:daily

但是,建议对此类操作使用具有适当shebang的脚本。它们对
``stdout``和``stderr``的输出以及它们的退出代码将由*deck chores*



limitions
----


*记录,此时*deck chores*设计为在单个docker节点上运行,而不是在这些节点的集群中运行。我们非常鼓励在这方面的代码和文档贡献。



ing jobs
*`cerberus<;http://python cerberus.org>;``用于处理元数据
*`docker py<;https://docker py.readthedocs.io>;``用于docker交互
*`flake8<;http://flake8.pycqa.org/>;`` uy,`mypy<;http://mypy-lang.org>;`` ux,
`pytest<;http://pytest.org>;``_以及"tox<;https://tox.readthedocs.io>;```关于测试
*`python<;https://www.python.org>;````关于测试
*`python<;http://www.python.org>;```



>
>













<
>
=
=
=

=>



;```````````````````````0.3(2019-01-06)
~~~~~~~~~~~~~~~~~~

**fix*:在启动时记录版本,而不是其变量名

<0.3-rc1(2018-12-18)
~~~~~~~~~~~~~~~~~~~~~~~~~

**new*:容器配置"options.user``允许为所有未定义的作业设置执行用户
在映像上设置(:issue:`5`)
**new*:可以在作业的``env``命名空间中设置作业的环境变量
(:issue:`41`)
**new*:可以使用作业的``workdir``属性设置工作目录(:issue:`42`)
**new*:可以将cron和interval触发器配置为de随机放置"jitter`
选项(:issue:`43`)
**new*:间隔触发器,jitter选项可以用包含
时间单位的字符串定义
**removed*:删除"default\u user`"环境变量(:issue:`17`)
**删除*:分析环境变量``assert_fingerprint``和``docker_daemon``
**更改*:将容器配置``options``移动到``options.flags``
**更改*:将环境变量``default_options``重命名为``default_flags``
**changed*:已升级的基本映像
**已更改*:已升级的已使用cerberus版本
**已更改*:需要python 3.7
**修复*:在映像中包含"tzdata"包(:issue:`33`)
**修复*:在启动时为暂停的容器添加暂停的作业
**重构*:使用python docker sdk 3.5(:问题:`31`)

>0.2(2018-02-23)0.2(2018-02-23)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


**新*:说明如何仅运行计划作业(:问题:`25`by@binnisb@binnisb)
**修复*:说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明说明~

**查NGED*:ARM基于在ARMV7L体系结构上执行的"python:3.6-alpine<;https://hub.docker.com/(uu/python/>;`
**已更改*:已更新的依赖项*apscheduler*和*docker py*

<0.2-rc2(2017-08-05)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

**已更改*:ARM构建基础在"arm32v6/python<;https://hub.docker.com/r/arm32v6/python/>;""更改*":因此"arm32v6"替换了"图像标记"中的"arm"后缀
**更改*:没有更多的图像被标记为"最新-$architecture"`

0.2-rc1(2017-07-01)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~
**重构*:使用python docker sdk 2(:issue:`14`)
**删除*:``assert_fingerprint``环境变量
**重命名*:``docker_daemon``为``docker_host``以符合sdk
**修复*:检查固定标签(:issue:`18` by@aeri4list)
*文档更新

0.1(2017-03-02)0.1(2017-03-02)0.1(2017-03-03-02)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**new*:一个与体系结构无关的清单被推送到映像注册表中,用于
发布映像


0.1.beta2(2016-12-08)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

**new:*根据:envvar:log-u格式设置日志格式
**new:*设置行为标志的选项标签
**new:*容器可以e通过可配置标签标识为服务
**新建:*忽略服务的其他容器的作业定义
(默认情况下,可以配置退出)
**新建:*还可以为作业定义解析图像标签
(默认情况下,可以配置退出)

0.1.beta1(2016-12-04)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

*第一次发布时有完整的文档

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么javaassist仅在项目中使用lambda时加载Entitymanager时抛出无效的常量类型:18   java如何识别用户是否在Alexa中首次启动技能?   java maven:如何防止插件更新   java StringBuilder将null追加为“null”   在java中,我可以在画布上绘制画布吗?   java如何在JRadioButton上垂直对齐文本和图像?   java“类是对象的集合”。这个定义是对的还是错的?   java如何用其他字符替换字符串中的1个或多个字符?   Java的HashSet<Double>及其子集的hashcode的唯一性   对象ArrayList的java并发修改错误   多线程Java线程:让EDT函数等待长时间运行的函数离开EDT   java如何重写方法,将一个实例变量和一个局部变量相加,从而生成一个数据类型为Double的新变量?