f624800b84
I was forced to manually do update the following files, because otherwise they would be ignored according .gitignore settings. Probably they should be deleted from repo. Interop/.idea/compiler.xml Interop/.idea/gradle.xml Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_runtime_1_0_3.xml Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_0_3.xml Interop/.idea/modules.xml Interop/.idea/modules/Indexer/Indexer.iml Interop/.idea/modules/Runtime/Runtime.iml Interop/.idea/modules/StubGenerator/StubGenerator.iml backend.native/backend.native.iml backend.native/bc.frontend/bc.frontend.iml backend.native/cli.bc/cli.bc.iml backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2Native.kt backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt backend.native/tests/link/lib/foo.kt backend.native/tests/link/lib/foo2.kt backend.native/tests/teamcity-test.property
33 lines
1.5 KiB
Docker
33 lines
1.5 KiB
Docker
FROM openjdk:8u171-jdk-stretch as builder
|
|
WORKDIR /opt
|
|
ENV kotlin_native_ver "0.7.1"
|
|
ENV kotlin_native_home "/opt/kotlin-native-linux-$kotlin_native_ver"
|
|
RUN wget "https://github.com/JetBrains/kotlin-native/releases/download/v$kotlin_native_ver/kotlin-native-linux-$kotlin_native_ver.tar.gz" \
|
|
&& tar -xzf kotlin-native-linux-$kotlin_native_ver.tar.gz && rm kotlin-native-linux-$kotlin_native_ver.tar.gz \
|
|
&& apt-get -qy update && apt-get install libcurl4-openssl-dev \
|
|
&& mkdir -p /app/src/main/kotlin/org/example/weather_func \
|
|
&& mkdir -p /app/lib/cJSON-1.7.7/include/cjson && mkdir -p /app/lib/cJSON-1.7.7/lib/x86_64-linux-gnu \
|
|
&& mkdir -p /app/gradle/wrapper
|
|
WORKDIR /app
|
|
|
|
COPY gradle/wrapper/gradle-wrapper.properties gradle/wrapper/gradle-wrapper.jar /app/gradle/wrapper/
|
|
COPY gradlew openweathermap_key.txt /app/
|
|
COPY .konan/ /root/.konan
|
|
COPY *.def *.kts /app/
|
|
COPY src/ /app/src
|
|
COPY lib/cJSON-1.7.7/include/cjson/cJSON.h /app/lib/cJSON-1.7.7/include/cJSON.h
|
|
COPY lib/cJSON-1.7.7/lib/x86_64-linux-gnu/libcjson.a /app/lib/cJSON-1.7.7/lib/libcjson.a
|
|
RUN ./gradlew build && cp build/konan/bin/linux_x64/weather.kexe weather
|
|
|
|
FROM debian:stretch
|
|
ADD https://github.com/openfaas/faas/releases/download/0.8.2/fwatchdog /usr/bin
|
|
RUN apt-get update && apt-get -qy install libcurl4-openssl-dev \
|
|
&& chmod +x /usr/bin/fwatchdog && mkdir -p /app
|
|
WORKDIR /app
|
|
COPY --from=builder /app/openweathermap_key.txt .
|
|
COPY --from=builder /app/weather .
|
|
RUN chmod +x weather
|
|
ENV fprocess "./weather"
|
|
HEALTHCHECK --interval=2s CMD [ -e /tmp/.lock ] || exit 1
|
|
CMD ["fwatchdog"]
|