added packages into dockploy
This commit is contained in:
+8
-24
@@ -1,33 +1,17 @@
|
||||
# bookworm کامل تا OpenSSL آماده باشد (بدون apt روی سرور ایران)
|
||||
FROM node:22-bookworm
|
||||
# ایمیج اجرا: runtime از گیت میآید. npm و node_modules داخل داکر نیست.
|
||||
ARG NODE_IMAGE=node:22-bookworm
|
||||
FROM ${NODE_IMAGE}
|
||||
WORKDIR /app
|
||||
|
||||
ENV NODE_ENV=production
|
||||
ENV TZ=Asia/Tehran
|
||||
ENV PRISMA_QUERY_ENGINE_LIBRARY=/app/runtime/libquery_engine-debian-openssl-3.0.x.so.node
|
||||
|
||||
COPY deploy-bundle.tar.gz /tmp/deploy-bundle.tar.gz
|
||||
RUN tar -xzf /tmp/deploy-bundle.tar.gz -C /app \
|
||||
&& rm /tmp/deploy-bundle.tar.gz
|
||||
|
||||
# هیچ دستور prisma یا npm روی سرور اجرا نمیشود؛ همه چیز از قبل ساخته آمده است
|
||||
ENV CHECKPOINT_DISABLE=1
|
||||
ENV DO_NOT_TRACK=1
|
||||
ENV PRISMA_HIDE_UPDATE_MESSAGE=1
|
||||
|
||||
COPY package.json package-lock.json prisma.config.ts /app/
|
||||
COPY prisma /app/prisma
|
||||
|
||||
# کلاینت Prisma روی سیستم دولوپر با scripts/pack-prisma-client.sh ساخته میشود
|
||||
COPY prisma-client.tar.gz /tmp/prisma-client.tar.gz
|
||||
RUN rm -rf /app/node_modules/.prisma/client \
|
||||
&& mkdir -p /app/node_modules/.prisma \
|
||||
&& tar -xzf /tmp/prisma-client.tar.gz -C /app/node_modules/.prisma \
|
||||
&& rm /tmp/prisma-client.tar.gz
|
||||
|
||||
# dist آخر باشد تا دیپلوی معمولی فقط همین لایه را دوباره بسازد
|
||||
COPY dist /app/dist
|
||||
COPY runtime ./runtime
|
||||
COPY docker-entrypoint.sh /app/docker-entrypoint.sh
|
||||
RUN chmod +x /app/docker-entrypoint.sh
|
||||
RUN chmod +x /app/docker-entrypoint.sh \
|
||||
&& test -f /app/runtime/server.cjs \
|
||||
&& test -f /app/runtime/libquery_engine-debian-openssl-3.0.x.so.node
|
||||
|
||||
EXPOSE 3000
|
||||
ENTRYPOINT ["./docker-entrypoint.sh"]
|
||||
|
||||
Reference in New Issue
Block a user