包装docker compose to acheive dev perfect ci
compoctl的Python项目详细描述
使用pip install compoctl安装
长docker compose命令的包装器,它还添加了一些特性 这应该被认为是实验性的,在等待反驳或是上游 贡献-不会因为compoctl修饰docker compose而中断bc 命令。
compoctl apply:Docker compose的一行管道
链拉/构建/向下/向上/日志/PS,很适合黑客攻击,甚至更多 自动部署:
compoctl -f ./foo.yml apply # will run: docker-compose -f ./foo.yml pull docker-compose -f ./foo.yml build docker-compose -f ./foo.yml down docker-compose -f ./foo.yml up -d docker-compose -f ./foo.yml logs docker-compose -f ./foo.yml ps
组合备份
将数据备份到./backup。
使其按原样工作的示例配置:
volumes: - ./backup/postgres:/backup labels: io.yourlabs.backup.cmd: pg_dumpall -U postgres -f /backup/data.dump
这将把pg数据转储到./backup/postgres中,并导出 docker compose running config into./backup/docker-compose.restore.yml
它也将执行DOCK-COMPUE .BUBU.YML(如果存在的话)。这是 是否可以生成一个装载/备份的容器并继续 通过网络安全地导出要用于生产的备份。
为了防止权限问题,容器在任何时候都不应写入 ./备份目录本身。
预POC状态:等待链接docker-compose.backup.yml的示例 会生成restic和rclone来备份远程集合上的备份(或 将保留策略功能实现为duplicity)。
复合还原
从./backup复制docker-compose.yml并运行restore命令。
这是一个破坏性操作,将删除除 备份卷,逐个启动每个服务并应用restore命令。
使其按原样工作的示例配置:
volumes: - ./backup/postgres:/backup labels: io.yourlabs.restore.cmd: psql -U postgres -f /backup/data.dump
请注意,/backup目录必须已与备份一起设置 命令优先。
此外,在还原操作期间,群集将不可用/关闭。