Quantisan / docker-clojure

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

openjdk-11 image doesn't seem to contain leiningen anymore #146

Closed mattiuusitalo closed 2 years ago

mattiuusitalo commented 2 years ago

This morning our automatic builds started failing. We are using clojure:openjdk-11 image to run lein test, lein uberjar etc commands. I see a new version has been released yesterday.

I pulled the latest image from dockerhub and poked around with

docker run -it clojure:openjdk-11 /bin/bash

it appears lein isn't installed or at least can't be found. As a workaround we switch to clojure:openjdk-11-lein but as it states in the readme currently that all of the main build tools should be installed in the openjdk-11 image, missing lein in that image could be a mistake.

cap10morgan commented 2 years ago

@mattiuusitalo It seems we need some clarification in the README perhaps.

The only image that has all build tools installed is the one named clojure / clojure:latest. All the others only have one build tool installed.

We recently switched to clj (tools.deps) as the default tool in images that didn't specify which one they wanted (but we have always recommended using tags that fully specify what you want). That's why you suddenly stopped getting lein installed in your image.

Our advice before and now is if you need lein, to use an image that explicitly has lein in its tag (and anything else you rely on like JDK version, Linux distro, etc.) like you are now doing.

mattiuusitalo commented 2 years ago

Thanks. This is fine. The more specific tagged image works perfectly.