This repository was archived by the owner on Jul 9, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
74 lines (57 loc) · 1.78 KB
/
Dockerfile
File metadata and controls
74 lines (57 loc) · 1.78 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
64
65
66
67
68
69
70
71
72
73
74
FROM node:lts-alpine as node-builder
WORKDIR /root/
COPY ["yarn.lock", "package.json", "./"]
RUN set -ex \
&& apk add --no-cache --virtual .build-deps \
git \
&& yarn install \
&& apk del .build-deps
COPY ["postcss.config.js", "./"]
ADD ./webpack/ ./webpack/
ADD ./src/ ./src/
RUN yarn build
FROM python:3.7-alpine3.10
RUN mkdir /app/
WORKDIR /app/
COPY ["Pipfile","Pipfile.lock", "./"]
# COPY ["requirements.txt", "./"]
RUN set -ex \
&& apk add --no-cache --virtual .build-deps \
build-base \
libffi-dev \
linux-headers \
postgresql-dev \
libev \
libevdev \
&& apk add --no-cache --virtual .run-deps \
bash \
git \
pcre-dev \
postgresql-client \
libjpeg-turbo-dev \
libpng-dev \
freetype-dev \
libxslt-dev \
libxml2-dev \
&& pip3 install -U pip pipenv \
# && LIBRARY_PATH=/lib:/usr/lib /bin/sh -c "pip3 install --no-cache-dir -r ./requirements.txt" \
&& LIBRARY_PATH=/lib:/usr/lib /bin/sh -c "pipenv install --system --deploy --ignore-pipfile" \
&& apk del .build-deps
# Copy application code to context
COPY ["Procfile", "nginx.conf.sigil", "manage.py", "docker-entrypoint.sh", "./"]
ADD ./app/ ./app/
COPY --from=node-builder /root/build/ ./build
RUN DJANGO_SETTINGS_MODULE=app.settings.build python manage.py check
RUN DJANGO_SETTINGS_MODULE=app.settings.build python manage.py collectstatic -v 0 --clear --no-input
RUN addgroup -g 1001 -S app \
&& adduser -u 1001 -S app -G app \
&& chown -R app:app /app/
USER app
ENTRYPOINT ["/app/docker-entrypoint.sh"]
ENV DJANGO_SETTINGS_MODULE=app.settings.base
# ASGI port
EXPOSE 8000
CMD [ "daphne", \
"--port", "8000", \
"--bind", "0.0.0.0", \
"app.asgi:application" ]