pnpm deploy
Ajouté dans : v7.4.0
Deploy a package from a workspace.
Utilisation :
pnpm --filter=<nom du projet déployé> deploy <dossier cible>
Si vous générez votre projet avant le déploiement, utilisez également l'option --prod
pour ignorer l'installation des dépendances de développement (devDependencies
).
pnpm --filter=<nom du projet déployé> --prod deploy <target directory>
Utilisation dans une image docker. Après avoir tout généré dans votre monorepo, faites ceci dans une deuxième image qui utilise votre image de base monorepo comme contexte de construction ou dans une étape de génération supplémentaire :
# syntax=docker/dockerfile:1.4
FROM workspace as pruned
RUN pnpm --filter <nom de votre paquet> --prod deploy pruned
FROM node:18-alpine
WORKDIR /app
ENV NODE_ENV=production
COPY --from=pruned /app/pruned .
ENTRYPOINT ["node", "index.js"]
Options
--dev, -D
Seuls devDependencies
sont installés indépendamment du NODE_ENV
.
--no-optional
optionalDependencies
ne sont pas installées.
--prod, -P
Packages in devDependencies
won't be installed.
--filter <package_selector>
En savoir plus sur le filtrage.
Fichiers inclus dans le projet déployé
Par défaut, tous les fichiers du projet sont copiés pendant le déploiement. Le fichier package.json
du projet peut contenir un champ "files" pour répertorier les fichiers et les dossiers qui devraient être copiés