-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
40 lines (30 loc) · 949 Bytes
/
Dockerfile
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
FROM ubuntu:16.04
ENV NODE_VERSION = "v8.2.1"
#Updating image and installing
RUN apt-get update && \
apt-get install -y curl xz-utils && \
apt-get clean
#Download and unzip NodeJS
RUN cd /opt/ && \
curl -O https://nodejs.org/dist/v8.2.1/node-v8.2.1-linux-x64.tar.xz && \
tar xf node-v8.2.1-linux-x64.tar.xz && \
mv node-v8.2.1-linux-x64 /opt/node-js
#Create symbolic links
RUN ln -s /opt/node-js/bin/node /usr/bin/node && \
ln -s /opt/node-js/bin/npm /usr/bin/npm && \
ln -s /opt/node-js/bin/npx /usr/bin/npx
#Preparing environment
RUN mkdir -p /opt/wedding-site/App
#Copy all files required
COPY ./App /opt/wedding-site/App
COPY ./package.json /opt/wedding-site
COPY ./package-lock.json /opt/wedding-site
#Install Node dependencies
RUN cd /opt/wedding-site && \
npm install
#Port exposing
EXPOSE 80
#Volume
VOLUME ["/opt"]
#Entrypoint
ENTRYPOINT ["/usr/bin/npm", "--prefix", "/opt/wedding-site", "start"]