39 lines · 1.0 KB · Text
RawDownload
# syntax=docker/dockerfile:1FROM node:24.4.0-slim AS baseENV PNPM_HOME="/pnpm"ENV PATH="$PNPM_HOME:$PATH"RUN corepack enableRUN corepack prepare pnpm@10.22.0 --activate FROM base AS buildCOPY . /usr/src/appWORKDIR /usr/src/app RUN apt-get update && apt-get install -y python3 make g++ git python3-pip pkg-config libsecret-1-dev && rm -rf /var/lib/apt/lists/* # Install dependenciesRUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm --filter=@dokploy/server --filter=./apps/api install --frozen-lockfile # Deploy only the dokploy app ENV NODE_ENV=productionRUN pnpm --filter=@dokploy/server buildRUN pnpm --filter=./apps/api run build RUN pnpm --filter=./apps/api --prod deploy --legacy /prod/api RUN cp -R /usr/src/app/apps/api/dist /prod/api/dist FROM base AS dokployWORKDIR /app # Set productionENV NODE_ENV=production # Copy only the necessary filesCOPY --from=build /prod/api/dist ./distCOPY --from=build /prod/api/package.json ./package.jsonCOPY --from=build /prod/api/node_modules ./node_modules ENV HOSTNAME=0.0.0.0CMD ["pnpm", "start"]