Skip to main content

DocKer compose Packer

Project description

DKP - DocKer compose Packer

PyPI - Version

Packs existent docker-compose project in executable single encrypted (GPG AES256) archive (tar + gz). It means, that you don't need to install DKP or remember procedure details during restore which dramatically reduces stress and make your life simpler. In the end - it's hard to remember how to restore backup made by N generations of administrators years ago before you...

The pipeline is:

flowchart TD
    A[tar volumes] -->B(tar images)
    B --> C[add env files and manifests]
    C --> D[add restore scripts]
    D --> E[compress and encrypt]
    E --> F[wrap to self-extracting file]

For backup you need:

  • gpg
  • python 3.8+ (see tests in workflow)
  • sh
  • tar
  • gzip
  • docker with compose plugin

For restore you need:

  • gpg
  • sed
  • tar
  • gzip

Installation

Recomended

pip install dkp

Alternative - just download dkp/dkp.py and make it executable.

Backward compatibility

Once backup created, the version of DKP doesn't matter anymore since archive is self-complete independent file.

New DKP versions may introduce more features as well as different layout of final archive, but it will not affect previous backups.

Usage

Create backup

usage: dkp [-h] [--output OUTPUT] [--skip-images] [--passphrase PASSPHRASE] [project]

DocKer compose Packer - backup compose project with all batteries included

positional arguments:
  project               Compose project name. Default is docker-compose-pack

options:
  -h, --help            show this help message and exit
  --output OUTPUT, -o OUTPUT
                        Output file. Default docker-compose-pack.bin
  --skip-images, -S     Do not archive images
  --passphrase PASSPHRASE, -p PASSPHRASE
                        Passphrase to encrypt backup. Can be set via env PASSPHRASE

Restore

Usage:

./path/to/backup/file [--restore/-r] [-s/--start] [-h/--help] [passphrase]

   passphrase      Key to decrypt archive. Can be set by env PASSPHRASE

  -h, --help       Show this help
  -r, --restore    Automatically restore project after unpacking
  -s, --start      Automatically start project after unpacking. Implicitly enables --restore

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dkp-0.2.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

dkp-0.2.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file dkp-0.2.0.tar.gz.

File metadata

  • Download URL: dkp-0.2.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for dkp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 4356ad82ec2d6612a5803cdaef36fc2828c408c04844a1ca90e621b745010d9f
MD5 843010ea08c6482c1bfbdd9924e8f22c
BLAKE2b-256 f0908aa077f9907891a4c62f4d95f10269fbea3bae13939bd1a98e110b13596c

See more details on using hashes here.

File details

Details for the file dkp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: dkp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for dkp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c85433d00d97ab7d850d9327bc8dc93103e5ecd0bbb68b248ed0c883666203bf
MD5 f98afeb759eec62b03bae6af3eafb340
BLAKE2b-256 c3746a701ce1a5e6db0c04e32337cd5343ed88b6de7db4bc28af11082e8a75af

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page