33294af47703ea9a3348985174bd3dcd6db2fedf
Spark 4.1.2 requires Java 17 at runtime (it boots a JVM via the bin/spark-submit shell script). The previous Dockerfile only installed curl, ca-certificates, and tar — leaving spark-submit unable to find the 'java' binary. A JRE is sufficient (not the full JDK) because spark-submit does not compile Java at runtime — it loads pre-built JARs from $SPARK_HOME/jars/. JRE-only keeps the image ~160 MB smaller than JDK-headless. Sets JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 and prepends it to PATH so spark-submit (which checks JAVA_HOME) finds the right JVM. Combined with the prior yarn-REST rewrite, the runtime image now needs exactly three things in addition to python:3.12-slim: - uv (from ghcr.io/astral-sh/uv) - openjdk-17-jre-headless - Spark 4.1.2 from Tsinghua mirror
Description
No description provided
462 KiB
Languages
Python
98.1%
Shell
1%
Dockerfile
0.9%