Docker撰写项目的备份工具

compose-dump的Python项目详细描述


概述:
=





这段代码只在少量用例中测试。
邀请您参与。



``compose dump``让我们备份并(尚未)还原`docker compose``br/>-项目。与"docker compose"类似,此工具通常在项目文件夹中运行。它是一个简单的工具,可以在更广泛的备份逻辑中使用。备份的范围可以由内容作用域和
服务控制。

e转储到一个目录中,作为磁盘上的存档或作为标准输出的存档。





请参阅下面计划的功能。


h`pip`::

$pip install compose dump


安装可编辑的开发实例::

$cd compose dump
$pipsi install-e。#或者使用"pip"

usage
----


示例
~~~~~~~~


将合成项目从"project\u path"完全转储到"var/backups/compose":

$cd project\u path
$compose dump backup-t/var/backups/compose

通过ssh的主机:

$cd project廑path
$compose dump backup-x gz ssh user@host"cat->;~/backup.tar.gz"

带有"docker compose.yml"到"var/backups/compose"的ECTS:

$find。-名称"docker compose.yml"-键入f-execdir compose dump backup-t/var/backup s/compose\;


命令行引用::


$compose dump
$compose dump backup--help

被忽略。在
中,这是不在项目路径中或
以下的已装入卷,以及来自引用容器的"volumes"中的卷。不要将此视为
一个限制,而应将其视为认可良好做法的功能;在更广泛的备份逻辑中处理这些
对象。

t;time>;这是默认值
-manifest.yml
+config
-<;config_files>;..通常是docker-compose.yml及其引用文件
-<;build_contexts>;..
+volumes
+mounted
<;相对于项目的主机路径路径>;…
+项目
<;tar存档中的项目卷>;…
+服务
+<;服务>;…
<;tar存档中的服务卷>;…


sts位于
https://github.com/funkyfuture/compose-dump。


测试
~~~~~~~


集成测试需要测试机器上的Docker客户端。要保留包含集成测试结果的临时目录,
请使用`--keep results``选项调用``pytest`。

r主要依赖于集成测试。但是,不要告诉自己,这个世界已经充满了仇恨。我建议任何有这种想法的人使用这种暗能量来实现改进。


style notes
~这是由通过对python 3.6及更高版本附带的"文件系统路径协议"的预期。这里的经验法则是:始终使用
:类:`pathlib.path`对象来表示路径,使用:func:`str`转换函数
调用的值,将结果转换为`path`实例。直到3.6的
统治期到来。

todo/已知问题/注意事项
——r/>如果Docker守护进程传递的卷存档大于可用内存,则可能会遇到问题。因此,您应该避免在
生产系统上出现这种情况。这不适用于已装入的卷。如果无法避免这种情况,请打开一个问题。

-测试扩展服务中定义的卷
-筛选卷
-仅暂停实际受影响的服务
-从项目文件夹中的文件备份配置
-可能:

-尊重.dockerginore
-.backup忽略
-从stdin读取配置

restore
~~~~~~~~~

-实现项目转储的自动恢复
-从stdin读取



……_` docker compose`:https://docs.docker.com/compose/
。_`文件系统路径协议`:https://www.python.org/dev/peps/pep-0519/
…_` pip`:https://packaging.python.org/installing/使用pip安装
。_` pipsi`:https://github.com/mitsuhiko/pipsi

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

推荐PyPI第三方库


热门话题
java JavaBridge errno=10054被Remotehost关闭   javafx如何在每次调用方法中的变量时更新它?(爪哇)   java mod_群集在发现后未平衡负载   Java软件编辑器/语法高亮   java为什么不能强制转换数组的结果。asList()到ArrayList?   java HIBERNATE:无法使用HIBERNATE从MySQL中提取数据   java在Google地图片段上添加布局   java在AbstractTableModel中执行setValueAt之前,我如何做一些事情?   java在整个Tomcat运行时保存变量   java如何在Thymeleaf模板中获取环境变量的值?   java Selenium Chrome驱动程序针对属性的标签   java正则表达式捕获未知数量的重复组