From 321a4c4f5706055de0041b4ff000a87dbe39acc6 Mon Sep 17 00:00:00 2001 From: heyarne Date: Tue, 5 May 2020 20:56:50 +0200 Subject: [PATCH] Configure docker build --- .dockerignore | 6 ++++++ Dockerfile | 17 +++++++++++++++++ deps.edn | 4 ++-- src/heyarne/all_my_friends/server.clj | 2 +- 4 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..cf0a700 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +.cpcache +.shadow-cljs +node_modules +resources/public/js +.git +target diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6171b84 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +FROM theasp/clojurescript-nodejs:shadow-cljs-alpine as build +WORKDIR /app +# RUN apk --no-cache add python alpine-sdk + +COPY package.json package-lock.json deps.edn shadow-cljs.edn /app/ +RUN npm ci + +COPY . . +RUN clojure -A:cljs -m shadow.cljs.devtools.cli release app +RUN clojure -A:uberjar + +FROM alpine:3.9 +RUN apk add --no-cache openjdk8 +WORKDIR /app +COPY --from=build /app /app +RUN cd /app/target/ && mv *-standalone.jar app-standalone.jar +CMD java -cp /app/target/app-standalone.jar heyarne.all_my_friends.server diff --git a/deps.edn b/deps.edn index 2faaa32..4ddd7c1 100644 --- a/deps.edn +++ b/deps.edn @@ -1,6 +1,6 @@ {:paths ["src" "resources"] - :extra-paths ["resources"] - :deps {environ {:mvn/version "1.1.0"} + :deps {org.clojure/clojure {:mvn/version "1.10.1"} + environ {:mvn/version "1.1.0"} http-kit {:mvn/version "2.3.0"} compojure {:mvn/version "1.6.1"} ring-logger {:mvn/version "1.0.1"}} diff --git a/src/heyarne/all_my_friends/server.clj b/src/heyarne/all_my_friends/server.clj index 70734dc..b05df46 100644 --- a/src/heyarne/all_my_friends/server.clj +++ b/src/heyarne/all_my_friends/server.clj @@ -26,7 +26,7 @@ (defn -main [& args] - (let [port (env :port 8081)] + (let [port (Integer/parseInt (env :port "8081"))] (println "Starting server on port" port) (reset! server (-> #'app (logger/wrap-with-logger)