Quantisan / docker-clojure

Official Docker image for Clojure
https://hub.docker.com/_/clojure/
MIT License
204 stars 34 forks source link

Proposal: babashka variants #129

Open cap10morgan opened 2 years ago

cap10morgan commented 2 years ago

Babashka is a pretty nifty little tool that can pretty much replace a direct installation of tools.deps with its bb clojure invocation (it will install the latest / desired version of tools.deps on demand).

It might be nice to provide clojure image variants with only babashka installed as the build-tool. Or would it be better to build these on top of the existing tools-deps images (so they already have the latest version of that pre-installed)?

cap10morgan commented 2 years ago

If we go the tools.deps pre-install route, we would need to copy / symlink the clojure-tools-[version].jar file into $HOME/.deps.clj/[version]/ClojureTools/.

Or... just invoking bb clojure in the image build should do it for us.

mk commented 2 years ago

Would love a bb variant.

Or would it be better to build these on top of the existing tools-deps images (so they already have the latest version of that pre-installed)?

I think that's better. The size benefit of omitting it should hardly be noticeable and it's useful to have both imo (e.g. for tooling that depends on it).

lispyclouds commented 1 year ago

Adding in some more context as one of the maintainers of babashka and an actual need for this:

Docker recently introduced a fee of 9$/member for teams and removed free teams. We currently push our images to https://hub.docker.com/r/babashka/babashka and this is affected by this. One solution to this is pushing bb flavoured images as part of this.

We think that this is a good reason to consider this and should bring the standard clojure and the bb variants closer and be more coherent.

Slack thread: https://clojurians.slack.com/archives/CLX41ASCS/p1678813448403629

cc @Quantisan

lispyclouds commented 1 year ago

If this is something that is worth considering, I am volunteering to maintain and keep it upto date and implement the CI automation for this too.

jvia commented 4 weeks ago

Big +1 for adding Babashka into all image variants. The task runner greatly improves the developer experience for tools.deps projects. It would be great to be able to invoke our tasks in CI to build and deploy.