-
Notifications
You must be signed in to change notification settings - Fork 33
/
prod.Dockerfile
36 lines (28 loc) · 1.13 KB
/
prod.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
FROM node:10-alpine
RUN apk add --no-cache python curl bash automake autoconf libtool git alpine-sdk postgresql-dev netcat-openbsd
RUN addgroup ddk -g 1100 && \
adduser -D -u 1100 ddk -G ddk
WORKDIR /home/ddk
RUN mkdir -p /home/DDK.REGISTRY && chmod -R 777 /home/DDK.REGISTRY
USER ddk
RUN mkdir -p /home/ddk && chmod -R 777 /home/ddk && \
mkdir -p /home/ddk/dist && mkdir -p /home/ddk/dist/core && mkdir -p /home/ddk/dist/api && \
mkdir -p /home/ddk/logs && \
touch /home/ddk/LICENSE
USER root
RUN npm install --global npm@latest && \
npm install --global node-gyp@latest && \
npm install --global wait-port@latest
USER ddk
WORKDIR /home/DDK.REGISTRY
RUN git clone https://github.com/AraiEzzra/DDK.REGISTRY.git .
WORKDIR /home/ddk
COPY ./package*.json /home/ddk/
RUN npm install
COPY --chown=ddk . /home/ddk
RUN npm run build
COPY --chown=ddk docker-entrypoint-prod.sh /home/ddk/docker-entrypoint-prod.sh
USER root
RUN chmod +x /home/ddk/docker-entrypoint-prod.sh
USER ddk
ENTRYPOINT ["/bin/bash", "/home/ddk/docker-entrypoint-prod.sh"]