Skip to main content

Takes the drudgery out of bind-mounting volumes on Docker and Singularity

Project description

bindit

https://img.shields.io/pypi/v/bindit.svg https://img.shields.io/travis/jooh/bindit.svg Documentation Status

Takes the drudgery out of binding volumes on Docker and (soon) Singularity

bindit is a wrapper for container runners that makes it easy to handle file input and output for containerised command-line applications. It works by detecting file paths in the container image arguments, and rebasing these as necessary onto new bind mounts. See docs for full detail, but here is the high-level API:

Usage: bindit [OPTIONS] COMMAND [ARGS]...

  bindit is a wrapper for container runners that makes it easy to handle
  file input and output for containerized command-line applications. It
  works by detecting file paths in the container image arguments, and
  rebasing these as necessary onto new bind mounts.

Options:
  -i, --ignorepath PATH  path(s) on the host to ignore when detecting new bind
                         mounts. Typical         linux binary locations
                         (/usr/bin etc) are included on this list by default.
  -a, --absonly          Only rebase absolute paths.
  -d, --dryrun           Return formatted shell command without invoking
                         container runner
  -l, --loglevel TEXT    Logging level  [default: INFO]
  --help                 Show this message and exit.

Commands:
  docker
Usage: bindit_partial [OPTIONS] SCRIPT_ARG...

  bindit_partial constructs a shell script wrapper for bindit (or your
  container runner directly) that can be used as a command line interface
  for the container. It works a bit like functools.partial in the standard
  library - you can offload some default parameters (e.g. for volume binds
  mounts) to the script in order to obtain a cleaner API for the container.

  For main documentation, see bindit.

Options:
  --output_file TEXT     Output to file instead of standard out
  --shebang TEXT         Shell interpreter directive  [default: #!/bin/bash]
  --vararg_pattern TEXT  vararg pattern (try "$argv" for csh/tcsh)  [default:
                         "$@"]
  --help                 Show this message and exit.   Usage: bindit_partial [OPTIONS] SCRIPT_ARG...

History

0.2.2 (2019-07-26)

  • Patch –version argument for standalone installs.

0.2.1 (2019-07-26)

  • Handle missing docker binary more gracefully to support e.g. dryrun mode on machines without docker installed (and eventually, singularity).

0.2.0 (2019-07-25)

  • New bindit_partial utility for generating command-line wrapper scripts

  • Tests improved, bugs squashed (0.1.0 was easy to break, this release is much more robust

  • Comprehensive documentation with reasonable docstrings

0.1.0 (2019-04-30)

  • First release on PyPI.

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

bindit-0.2.2.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

bindit-0.2.2-py2.py3-none-any.whl (12.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file bindit-0.2.2.tar.gz.

File metadata

  • Download URL: bindit-0.2.2.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.1

File hashes

Hashes for bindit-0.2.2.tar.gz
Algorithm Hash digest
SHA256 55b9d5b01d80653f4a14b7003887c52e1644bccf5386c3bf57e508b823a76320
MD5 fb8b0966535d05d4f45f3a8b4ee8830e
BLAKE2b-256 5ce0aa149435422e44ebc234aae18de0f9c837e8cb406207af795df5531a0e47

See more details on using hashes here.

File details

Details for the file bindit-0.2.2-py2.py3-none-any.whl.

File metadata

  • Download URL: bindit-0.2.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.1

File hashes

Hashes for bindit-0.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2d97fa6b18b413661c522f7934eb172e0fb2b869b8d00edf60220846b5235917
MD5 05799ff616b22c268714c53dedbae28b
BLAKE2b-256 ee66333b173b6e6ceb3abe76a6e23d414307666fb131575576323a0222c3c927

See more details on using hashes here.

Supported by

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