1- # Adopted from https://github.com/serandel/kscript-docker/blob/master/Dockerfile
2-
3- # Alpine had problems with Java and SDKMAN!
4- # lchmod (file attributes) error: Not supported
5- # https://bugs.alpinelinux.org/issues/8089
6-
7- FROM ubuntu:focal
1+ FROM bellsoft/liberica-openjdk-alpine:11
82
93104
11- SHELL ["/bin/bash" , "-c" ]
12-
13- RUN apt-get update && \
14- apt-get -y install curl zip unzip && \
15- rm -rf /var/lib/apt/lists/*
16-
17- # Install SDKMAN!
18- RUN curl -s "https://get.sdkman.io" | bash
19-
20- RUN source /root/.sdkman/bin/sdkman-init.sh && \
21- sdk install java 11.0.9-zulu && \
22- sdk install kotlin 1.4.10
23- # sdk install maven 3.6.0 && \
24-
25- ARG KSCRIPT_VERSION
26- ENV KSCRIPT_VERSION=$KSCRIPT_VERSION
27-
28- # # run separately to better use docker build cache
29- RUN source /root/.sdkman/bin/sdkman-init.sh && \
30- sdk install kscript $KSCRIPT_VERSION
5+ ARG KSCRIPT_VERSION=3.1.0
6+ ARG KOTLIN_VERSION=1.5.21
7+
8+ RUN cd $(mktemp -d) && \
9+ # Install kscript
10+ wget https://github.com/holgerbrandl/kscript/releases/download/v${KSCRIPT_VERSION}/kscript-${KSCRIPT_VERSION}-bin.zip -q -O - | \
11+ unzip - && \
12+ mv kscript-${KSCRIPT_VERSION}/bin/* /usr/local/bin && \
13+ chmod a+x /usr/local/bin/kscript && \
14+ \
15+ # Install Kotlin
16+ wget https://github.com/JetBrains/kotlin/releases/download/v${KOTLIN_VERSION}/kotlin-compiler-${KOTLIN_VERSION}.zip -q -O - | \
17+ unzip - && \
18+ chmod a+x kotlinc/bin/kotlin kotlinc/bin/kotlinc && \
19+ mv kotlinc /opt && \
20+ \
21+ # Install bash
22+ apk add bash && \
23+ \
24+ # Done
25+ rm -rf $PWD
26+
27+ WORKDIR /w
28+
29+ ENTRYPOINT KOTLIN_HOME=/opt/kotlinc \
30+ PATH=/opt/kotlinc/bin:$PATH \
31+ kscript "$0" "$@"
3132
32- ENTRYPOINT source /root/.sdkman/bin/sdkman-init.sh && /usr/bin/env kscript "$0" "$@"
3333CMD [ "--help" ]
0 commit comments