Compare commits
1 الالتزامات
main
...
deploy/not
| المؤلف | SHA1 | التاريخ | |
|---|---|---|---|
|
|
9385f0f399 |
27
Dockerfile
27
Dockerfile
@@ -1,4 +1,4 @@
|
|||||||
FROM node:20-alpine AS builder
|
FROM node:20-alpine AS builder
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@@ -6,34 +6,17 @@ COPY package*.json ./
|
|||||||
RUN npm ci
|
RUN npm ci
|
||||||
|
|
||||||
COPY . .
|
COPY . .
|
||||||
RUN npm run build
|
RUN npm run build:notifications
|
||||||
|
|
||||||
FROM node:20-alpine AS runner
|
FROM node:20-alpine AS runner
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
ENV VIDEO_PROCESSING_FFMPEG_PATH=/usr/bin/ffmpeg
|
|
||||||
ENV NODE_OPTIONS=--enable-source-maps
|
|
||||||
|
|
||||||
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.edge.kernel.org/g' /etc/apk/repositories \
|
|
||||||
&& apk update \
|
|
||||||
&& apk add --no-cache ffmpeg tini
|
|
||||||
|
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
RUN npm ci --omit=dev \
|
RUN npm ci --omit=dev && npm cache clean --force
|
||||||
&& npm cache clean --force
|
|
||||||
|
|
||||||
COPY --from=builder --chown=node:node /app/dist ./dist
|
COPY --from=builder /app/dist/apps/notification-service ./dist/apps/notification-service
|
||||||
RUN mkdir -p /app/uploads \
|
|
||||||
&& chown -R node:node /app/uploads
|
|
||||||
|
|
||||||
USER node
|
CMD ["node", "dist/apps/notification-service/main.js"]
|
||||||
|
|
||||||
EXPOSE 4000
|
|
||||||
|
|
||||||
HEALTHCHECK --interval=30s --timeout=5s --start-period=15s --retries=3 \
|
|
||||||
CMD wget -q -O /dev/null http://127.0.0.1:4000/api/v1/health || exit 1
|
|
||||||
|
|
||||||
ENTRYPOINT ["/sbin/tini", "--"]
|
|
||||||
CMD ["node", "dist/main.js"]
|
|
||||||
|
|||||||
المرجع في مشكلة جديدة
حظر مستخدم