
Security News
New CVE Forecasting Tool Predicts 47,000 Disclosures in 2025
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
dockerflow
Advanced tools
Smooth and simple Docker image development with Ansible. Small configuration changes result in quick incremental updates of development images.
To build an image from scratch:
dockerflow build .
To rebuild the image incrementally after changing a playbook or file:
dockerflow rebuild .
To drop into a shell inside the container when the build fails so you can figure out what happened interactively:
dockerflow debug-build .
Existing Docker build systems don't support my preferred development workflow, which has four actions:
Dockerfiles are fine for 'build', but can be inefficient for 'rebuild'. Consider the following Dockerfile:
RUN apt-get install x y z
RUN long-running-source-build
...
If you remember that the subsequent steps also require apt-get install w
, you can either add w
to the existing apt-get install line, which means you have to wait for your long-running source build to finish again; or add a second apt-get install
line further down, which gets confusing.
Also, I like Ansible's declarative approach to configuration better than Dockerfiles' imperative one.
If you also like Ansible but care about sticking with Dockerfiles more than 'rebuild', check this out.
I don't want the output to be complete tarballs of images, but tagged Docker images that I can push. Also, I want an easy incremental option.
Install Node.js, then sudo npm install -g dockerflow
.
dockerflow action path [options]
, where action can be build, rebuild, debug-build or debug-rebuild.
In more or less the spirit of Dockerfiles, the given path should contain an Ansible playbook called 'dockerflow.yml' which specifies the configuration. In addition, the given path will be available inside the container read-only at /dockerflow
during the build, but will not be bundled into the image.
The playbook should define the following variables:
Alternatively, these options can be set using command line options --base
, --tag
, --docker-options
, --environment
and --command
. Command line options override config file options. Note that if you override --base
, there is no difference between the build and rebuild actions.
If your Docker daemon is running on a nonstandard socket, you can pass the -H
or --host
argument.
FAQs
Smooth and simple Docker image development with Ansible.
The npm package dockerflow receives a total of 6 weekly downloads. As such, dockerflow popularity was classified as not popular.
We found that dockerflow demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.