DKP - DocKer compose Packer
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
Metadata
Release files for dkp 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dkp-0.2.0.tar.gz | 7.5 kB | Without provenance | Details for dkp-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dkp-0.2.0-py3-none-any.whl | Python 3 | none | any | Details for dkp-0.2.0-py3-none-any.whl |
Total release size: 15.9 kB
Release files / dkp-0.2.0.tar.gz
| Download URL | dkp-0.2.0.tar.gz |
|---|---|
| Size | 7.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4356ad82ec2d6612a5803cdaef36fc2828c408c04844a1ca90e621b745010d9f
|
|
BLAKE2b-256 checksum How to use checksums |
f0908aa077f9907891a4c62f4d95f10269fbea3bae13939bd1a98e110b13596c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.8
|
Release files / dkp-0.2.0-py3-none-any.whl
| Download URL | dkp-0.2.0-py3-none-any.whl |
|---|---|
| Size | 8.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c85433d00d97ab7d850d9327bc8dc93103e5ecd0bbb68b248ed0c883666203bf
|
|
BLAKE2b-256 checksum How to use checksums |
c3746a701ce1a5e6db0c04e32337cd5343ed88b6de7db4bc28af11082e8a75af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.8
|
Security for dkp 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.