Commit | Line | Data |
---|---|---|
e10ceff5 | 1 | FROM ubuntu:18.04 |
e8933402 JM |
2 | MAINTAINER Joel Martin <github@martintribe.org> |
3 | ||
4 | ########################################################## | |
5 | # General requirements for testing or common across many | |
6 | # implementations | |
7 | ########################################################## | |
8 | ||
9 | RUN apt-get -y update | |
10 | ||
11 | # Required for running tests | |
12 | RUN apt-get -y install make python | |
13 | ||
14 | # Some typical implementation and test requirements | |
15 | RUN apt-get -y install curl libreadline-dev libedit-dev | |
16 | ||
17 | RUN mkdir -p /mal | |
18 | WORKDIR /mal | |
19 | ||
20 | ########################################################## | |
21 | # Specific implementation requirements | |
22 | ########################################################## | |
23 | ||
2b933f42 JM |
24 | # |
25 | # Clojure (Java and lein) | |
26 | # | |
27 | ||
28 | RUN apt-get -y install openjdk-8-jdk | |
e8933402 JM |
29 | |
30 | ADD https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein \ | |
31 | /usr/local/bin/lein | |
32 | RUN chmod 0755 /usr/local/bin/lein | |
33 | ENV LEIN_HOME /mal/.lein | |
34 | ENV LEIN_JVM_OPTS -Duser.home=/mal | |
35 | ||
2b933f42 JM |
36 | # |
37 | # ClojureScript (Node and Lumo) | |
38 | # | |
39 | ||
40 | # For building node modules | |
41 | RUN apt-get -y install g++ | |
42 | ||
e10ceff5 JM |
43 | # Add nodesource apt repo config for 10.x stable |
44 | RUN apt-get -y install gnupg | |
45 | RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - | |
62fc786e | 46 | |
e10ceff5 | 47 | # Install nodejs |
62fc786e JM |
48 | RUN apt-get -y install nodejs |
49 | ||
e10ceff5 JM |
50 | ENV NPM_CONFIG_CACHE /mal/.npm |
51 | ||
62fc786e JM |
52 | ## Install ffi and lumo-cljs modules globally |
53 | #RUN npm install -g ffi lumo-cljs | |
54 | ||
55 | ENV HOME=/mal | |
2b933f42 | 56 |