dog is a simple wrapper for docker run to make it simple to call tools residing inside docker containers
dog is a simple wrapper for docker run to make it simple to call tools residing inside docker containers.
The basic idea is that you just put "dog" in front of the command you normally call.
So if your normally use "make" to compile your code, then if your compiler tools are stored inside a docker container you just do "dog make" instead - and dog will mount you local workspace and run the correct docker container without the developer noticing at all.
The docker container to use is defined in a file called dog.config which is normally positioned in the root of your workspace and contains the name of the docker image.
Usage, Configuration and how it works is all available here.
Dog is a single file script that only require Python 3.5+ and does not use any modules outside the ones that ship with Python.
So basically you can just clone the repo and stick a symlink to dog.py in your PATH.
Dog is also available on pypi so you should also be able to simply do:
pip install dog # Or python -m pip install dog
To get going.
By default the docker image is fetched from the default docker registry (hub.docker.com), for instance:
dog gcc main.c -o main
Will compile main.c using gcc 7.5.
You can see a more real-world example by looking at the crossbuild-for-dog test image that extends the standard crossbuild docker image with a dog enabled entrypoint - which can then be used to compile ARM linux executables anywhere.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size dog-9-py3-none-any.whl (9.9 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size dog-9.tar.gz (5.7 kB)||File type Source||Python version None||Upload date||Hashes View|