pnpm deploy
Добавлено в: v7.4.0
Разверните пакет из рабочей области.
Использование:
pnpm --filter=<deployed project name> deploy <target directory>
Если проект строите перед развертыванием, также используйте параметр --prod
, чтобы пропустить установку devDependencies
.
pnpm --filter=<имя развёртываемого проекта> --prod deploy <целевая директория>
Использование в образе docker. После построения всего в своем monorepo, сделайте это во втором образе, использующий базовый образ monorepo в качестве контекста сборки или в дополнительном этапе сборки:
# syntax=docker/dockerfile:1.4
FROM workspace as pruned
RUN pnpm --filter <имя вашего пакета> --prod deploy pruned
FROM node:18-alpine
WORKDIR /app
ENV NODE_ENV=production
COPY --from=pruned /app/pruned .
ENTRYPOINT ["node", "index.js"]
Опции
--dev, -D
Only devDependencies
are installed regardless of the NODE_ENV
.
--no-optional
optionalDependencies
не будут установлены.
--prod, -P
Packages in devDependencies
won't be installed.
--filter <селектор пакета>
Файлы, включенные в развернутый проект
По умолчанию во время развертывания копируются все файлы проекта. В проектах package.json
может быть поле "files" содержащее список файлов и каталогов, которые должны быть скопированы.