Skip to content

Commit 7d0fd3a

Browse files
committed
Reduce size of Docker image
Signed-off-by: Jacob Salway <[email protected]>
1 parent 629d167 commit 7d0fd3a

File tree

3 files changed

+13
-6
lines changed

3 files changed

+13
-6
lines changed

build-tools/docker/Dockerfile

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,18 @@
1515
# limitations under the License.
1616
#
1717
FROM gradle:8.13-jdk17-noble AS builder
18+
1819
WORKDIR /app
20+
1921
COPY . .
20-
RUN ./gradlew clean build -x check
2122

22-
FROM azul/zulu-openjdk:21
23+
RUN --mount=type=cache,target=/home/gradle/.gradle/caches gradle --no-daemon clean build -x check
24+
25+
FROM azul/zulu-openjdk:21-jre
26+
2327
ARG APP_VERSION=0.1.0-SNAPSHOT
2428
ARG SPARK_UID=185
29+
2530
LABEL org.opencontainers.image.authors="Apache Spark project <[email protected]>"
2631
LABEL org.opencontainers.image.licenses="Apache-2.0"
2732
LABEL org.opencontainers.image.ref.name="Apache Spark Kubernetes Operator"
@@ -32,14 +37,16 @@ ENV SPARK_OPERATOR_WORK_DIR=/opt/spark-operator/operator
3237
ENV SPARK_OPERATOR_JAR=spark-kubernetes-operator.jar
3338

3439
WORKDIR $SPARK_OPERATOR_WORK_DIR
40+
3541
RUN groupadd --system --gid=$SPARK_UID spark && \
3642
useradd --system --home-dir $SPARK_OPERATOR_HOME --uid=$SPARK_UID --gid=spark spark && \
3743
chown -R spark:spark $SPARK_OPERATOR_HOME
3844

3945
COPY --from=builder --chown=spark:spark /app/spark-operator/build/libs/spark-kubernetes-operator-$APP_VERSION-all.jar $SPARK_OPERATOR_JAR
4046
COPY --from=builder --chown=spark:spark /app/build-tools/docker/docker-entrypoint.sh .
4147

42-
4348
USER spark
49+
4450
ENTRYPOINT ["/opt/spark-operator/operator/docker-entrypoint.sh"]
51+
4552
CMD ["help"]

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ spotbugs-plugin = "6.0.17"
3737
spotless-plugin = "6.25.0"
3838

3939
# Packaging
40-
shadow-jar-plugin = "8.1.1"
40+
shadow-jar-plugin = "8.3.6"
4141

4242
[libraries]
4343
kubernetes-client = { group = "io.fabric8", name = "kubernetes-client", version.ref = "fabric8" }
@@ -67,4 +67,4 @@ junit-platform-launcher = { group = "org.junit.platform", name = "junit-platform
6767
powermock-core = { group = "org.powermock", name = "powermock-core", version.ref = "powermock"}
6868
spotbugs-gradle-plugin = { group = "com.github.spotbugs.snom", name = "spotbugs-gradle-plugin", version.ref = "spotbugs-plugin" }
6969
spotless-plugin-gradle = { group = "com.diffplug.spotless", name = "spotless-plugin-gradle", version.ref = "spotless-plugin" }
70-
shadow = { group = "com.github.johnrengelman", name = "shadow", version.ref = "shadow-jar-plugin"}
70+
shadow = { group = "com.gradleup.shadow", name = "shadow-gradle-plugin", version.ref = "shadow-jar-plugin"}

spark-operator/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
apply plugin: 'com.github.johnrengelman.shadow'
19+
apply plugin: 'com.gradleup.shadow'
2020

2121
dependencies {
2222
implementation project(":spark-operator-api")

0 commit comments

Comments
 (0)