OkDocker - Image builder
Dockerfiles have defects.
You can't control build container runtime options, and thus can't mount volumes at buildtime (for example, for domain specific caching purpose, as in .deb downloads, compilations, .whl files ...).
You can't have precise control on what happens on what layer, and usually, you can see a "lot of layer" trend where it's not really necessary.
It tends to be slow unless everything is already cached.
OkDocker is one way to avoid Dockerfiles.