forked from teaDesign/VotingInfoApp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
54 lines (40 loc) · 1.06 KB
/
Dockerfile
File metadata and controls
54 lines (40 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
FROM quay.io/democracyworks/clojure-and-node:lein-2.8.1-node-8.11.2
MAINTAINER Democracy Works, Inc. <dev@democracy.works>
RUN apt-get update && \
apt-get install -y \
ruby \
rubygems-integration \
inotify-tools \
build-essential \
bzip2 \
curl \
libdbus-glib-1-2 \
libgtk-3-0 \
firefox-esr \
&& rm -rf /var/lib/apt/lists/* \
&& gem install sass -v 3.3.14
# install Firefox for headless testing
RUN curl -sSL \
'https://download.mozilla.org/?product=firefox-latest-ssl&os=linux64&lang=en-US' \
| tar -C /opt -xvjf -
ENV PATH="${PATH}:/opt/firefox"
# upgrade npm
RUN npm i -g npm@6.9.0
# install Grunt
RUN npm install -g grunt-cli
RUN npm install -g bower
RUN npm install node-sass@3.8.0
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
RUN npm install
COPY bower.json /usr/src/app/
COPY .bowerrc /usr/src/app/
RUN bower --allow-root install
COPY . /usr/src/app
RUN lein test
RUN npm prune --production
RUN lein cljsbuild once min
EXPOSE 4000 27017 28017
ENTRYPOINT [ "grunt" ]
CMD [ "default" ]