-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
63 lines (52 loc) · 1.56 KB
/
Dockerfile
File metadata and controls
63 lines (52 loc) · 1.56 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
55
56
57
58
59
60
61
62
63
FROM alpine:3.15
#FROM alpine:3.7
MAINTAINER Yee-Ting Li <yee379@gmail.com>
ENV APP_DIR /app
ENV GUNICORN_PORT=8000
ENV GUNICORN_USER=gunicorn
RUN adduser -D -h $APP_DIR $GUNICORN_USER
RUN apk add --no-cache bash file git nginx uwsgi uwsgi-python python3 openldap-clients \
gcc libffi-dev python3-dev musl-dev libressl-dev curl curl-dev nodejs npm \
imagemagick
#nodejs \
COPY ldap.conf /etc/openldap/ldap.conf
COPY entrypoint.sh /entrypoint.sh
WORKDIR ${APP_DIR}
COPY explgbk/ ${APP_DIR}/
ENV GUNICORN_MODULE=start
ENV GUNICORN_CALLABLE=app
RUN python3 -m ensurepip \
&& pip3 install --upgrade pip gunicorn \
&& pip3 install -r ${APP_DIR}/requirements.txt \
&& rm -r /root/.cache
RUN npm config set unsafe-perm true
RUN npm install --unsafe-perm --global \
@fortawesome/fontawesome-free \
acorn@^6.0.0 \
acorn-jsx \
acorn-dynamic-import \
bootstrap@4.4.1 \
bufferutil@^4.0.1 \
font-awesome \
jquery \
jquery.noty.packaged.js \
lodash \
moment \
moment-timezone \
mustache \
noty \
plotly.js \
popper.js \
selectize \
socket.io@2.3.0 \
socket.io-client@2.3.0 \
summernote \
tempusdominus-bootstrap-4 \
tempusdominus-core \
utf-8-validate@^5.0.2 \
ws@7.2.1
#RUN npm install --global @mapbox/mapbox-gl-style-spec @mapbox/mapbox-gl-supported plotly.js
RUN mkdir -p /usr/lib/node_modules/plotly.js/dist && curl -L 'https://cdn.plot.ly/plotly-latest.min.js' > /usr/lib/node_modules/plotly.js/dist/plotly.min.js
EXPOSE 8000
USER $GUNICORN_USER
ENTRYPOINT ["/entrypoint.sh"]