Skip to content

ezbak

ezbak is a backup manager. It creates, prunes, and restores compressed archives of files and directories. It writes them to the local filesystem, to AWS S3, or to both. It filters files with regular expressions, prunes with count-based and time-based rules, and restores a backup from a point in time.

ezbak was written to move shared state between jobs and hosts under an orchestrator such as Nomad or Kubernetes. In that setting the Docker container is the main way to run it. A Python package and a command-line tool run the same backups from your own code or from a shell.

ezbak stays small and focused. It is not a replacement for a full backup system such as Restic or Borg.

What it does

  • Creates tar-gzipped (.tgz) backups of files and directories.
  • Stores backups on the local filesystem, in AWS S3, or in both at once.
  • Filters files with include and exclude regular expressions.
  • Prunes old backups with keep rules that combine count-based and time-based retention.
  • Restores the latest backup, or the newest backup at or before a point in time.
  • Runs scheduled backups in a container with a cron expression.
  • Pings a healthcheck monitor from the container, so you learn about a silent failure.
  • Runs shell hooks before and after a container backup or restore. See Container lifecycle hooks.

Start here

  • Get a backup in five minutes


    Install ezbak and make your first backup with the container, CLI, or Python.

    Quickstart

  • The orchestration pattern


    The workflow ezbak is built for: backups that follow a job across hosts.

    Orchestration

  • Learn the concepts


    Storage locations, retention, filtering, and how failures surface.

    Concepts

  • Reference


    Every option across the library, CLI, and environment.

    Configuration reference

Which interface to use

ezbak has three interfaces that share one configuration. The job decides which one you use.

Interface Use it for
Docker container The primary interface. Orchestrated deployments, scheduled backups.
Command line Scripting, local tests, one-off backups from a shell.
Python library Driving ezbak from your own code.

The container is the design center. If you back up the state of a job under an orchestrator, start with the orchestration pattern.