FROM theasp/clojurescript-nodejs:shadow-cljs-alpine as build WORKDIR /app COPY package.json package-lock.json deps.edn shadow-cljs.edn /app/ COPY . . # compile server RUN clojure -A:uberjar # compile client RUN npm ci RUN clojure -A:cljs -m shadow.cljs.devtools.cli release app FROM alpine:3.9 RUN apk add --no-cache openjdk8 WORKDIR /app # this will be nicely mounted by dokku-docker-auto-volumes VOLUME /app/uploads COPY --from=build /app /app # Run the compiled artefact RUN cd /app/target/ && mv *-standalone.jar app-standalone.jar CMD java -jar /app/target/app-standalone.jar