Detection
migetpacks detects a Clojure application when either of the following files is present in the project root:project.clj(Leiningen)deps.edn(Clojure CLI/tools.deps)
Version Detection
Clojure Version
Clojure version is resolved in the following priority order:Leiningen Version
Leiningen version is detected from:Java Version
The JDK version used for compilation and runtime is read from:Build Process
migetpacks uses the officialclojure:temurin-{java}-lein Docker image which includes Leiningen and the JDK:
Uberjar Detection
migetpacks detects custom uberjar names fromproject.clj:
:uberjar-name is specified, migetpacks uses it when configuring the run command.
Run Command
The default run command for Clojure applications:RUN_COMMAND or a Procfile:
JVM Configuration
The following environment variables are set for production:Caching
Layer Caching
Dependencies are cached by copyingproject.clj before the full source:
BUILD_CACHE_DIR
WhenBUILD_CACHE_DIR is set, Leiningen and Maven caches persist at:
DHI Support
Docker Hardened Images are supported for Clojure runtime.
DHI Notes
- The build image is always the official Clojure image (DHI does not provide Clojure/Leiningen images).
- Only the runtime stage uses DHI distroless Eclipse Temurin JRE.
- Java version is read from
system.properties(default: 21). - Runtime images are distroless (no shell).