# Répertoire de déploiement personnalisé dans AWS Lambda
Lorsque vous exécutez IronPDF dans une fonction AWS Lambda sous Docker, vous pouvez essayer de pointer `CustomDeploymentDirectory` vers un chemin temporaire inscriptible tel que `/tmp`. Cela peut produire une ligne de journal trompeuse sur une recherche binaire échouée, mais le rendu PDF continue de fonctionner normalement.
```txt
Attempting deployment for 'Pdfium' using '/tmp/'
Failed to locate assembly(s) for deployment '/tmp/' at path '/tmp/'
Successfully located 'IronPdfInterop' at '/var/task'
```
Le message ressemble à un échec, mais il est informatif. IronPDF préfère les assemblies qui sont déjà déployés et ne consulte le chemin personnalisé qu'en cas de besoin. Dans Lambda, le répertoire de travail de votre conteneur Docker est généralement `/var/task`, où les binaires sont déjà présents, donc IronPDF les trouve là et continue.
`CustomDeploymentDirectory` sert deux rôles : un répertoire pour télécharger et déployer des composants natifs tels que `IronPdf.Native.Chrome.Linux`, et un chemin de recherche alternatif pour les dépendances d'exécution qui ne se trouvent pas dans les emplacements standards. Parce que le moteur favorise les binaires déjà déployés, le chemin `/tmp` est inutile à moins que vous ne dépendiez de `IronPdf.Slim` ou de téléchargements NuGet d'exécution des binaires natifs.
[[i:(Les lignes de journal de secours sont informatives, pas des erreurs. Si le rendu réussit, aucune action n'est nécessaire.)]]
## Solution
### Option 1 : Déploiement standard avec IronPdf.Linux
Pour la plupart des déploiements Lambda plus Docker utilisant `IronPdf.Linux`, la configuration la plus simple et la plus fiable saute complètement le répertoire personnalisé :
```csharp
IronPdf.Installation.AutomaticallyDownloadNativeBinaries = false;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.SingleProcess = true;
```
Désactiver les téléchargements automatiques indique à IronPDF que les binaires natifs sont déjà empaquetés, et `SingleProcess` garde le moteur en un seul processus, ce qui convient au runtime limité de Lambda.
### Option 2 : Déploiement avec IronPdf.Slim
Si vous envoyez `IronPdf.Slim` avec Docker, redirigez les chemins temporaires et de déploiement d'IronPDF vers `/tmp`, le seul répertoire inscriptible dans Lambda :
```csharp
var awsTmpPath = @"/tmp/"; // AWS temporary storage path
// Configuration for IronPDF rendering
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.DefaultRenderingEngine = IronPdf.Rendering.PdfRenderingEngine.Chrome;
Environment.SetEnvironmentVariable("TEMP", awsTmpPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("TMP", awsTmpPath, EnvironmentVariableTarget.Process);
IronPdf.Installation.TempFolderPath = awsTmpPath;
IronPdf.Installation.CustomDeploymentDirectory = awsTmpPath;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
```
Ici `CustomDeploymentDirectory` gagne sa place : le paquet Slim télécharge les composants natifs lors de l'exécution, et `/tmp` leur donne un foyer inscriptible. Activer `LinuxAndDockerDependenciesAutoConfig` permet à IronPDF de configurer les dépendances Linux lors du premier lancement.
## Quand le Configurer
- **Laissez-le non configuré lorsque :** vous empaquetez les dépendances d'IronPDF telles que `IronPdf.Linux` avec votre projet, utilisez des déploiements complets sans téléchargements d'exécution, et la fonction peut tout atteindre depuis `/var/task`.
- **Configurez-le sur `/tmp` lorsque:** vous utilisez `IronPdf.Slim` sans binaires natifs associés, comptez sur les téléchargements NuGet d'exécution pour des composants comme `IronPdf.Native.Chrome.Linux`, ou avez besoin de déploiements temporaires stockés dans le seul répertoire inscriptible de Lambda.
Lorsque vous exécutez IronPDF dans une fonction AWS Lambda sous Docker, vous pouvez essayer de pointer CustomDeploymentDirectory vers un chemin temporaire inscriptible tel que /tmp. Cela peut produire une ligne de journal trompeuse sur une recherche binaire échouée, mais le rendu PDF continue de fonctionner normalement.
Attempting deployment for 'Pdfium' using '/tmp/'Failed to locate assembly(s) for deployment '/tmp/' at path '/tmp/'Successfully located 'IronPdfInterop' at '/var/task'
Attempting deployment for 'Pdfium' using '/tmp/'
Failed to locate assembly(s) for deployment '/tmp/' at path '/tmp/'
Successfully located 'IronPdfInterop' at '/var/task'
Text
Le message ressemble à un échec, mais il est informatif. IronPDF préfère les assemblies qui sont déjà déployés et ne consulte le chemin personnalisé qu'en cas de besoin. Dans Lambda, le répertoire de travail de votre conteneur Docker est généralement /var/task, où les binaires sont déjà présents, donc IronPDF les trouve là et continue.
CustomDeploymentDirectory sert deux rôles : un répertoire pour télécharger et déployer des composants natifs tels que IronPdf.Native.Chrome.Linux, et un chemin de recherche alternatif pour les dépendances d'exécution qui ne se trouvent pas dans les emplacements standards. Parce que le moteur favorise les binaires déjà déployés, le chemin /tmp est inutile à moins que vous ne dépendiez de IronPdf.Slim ou de téléchargements NuGet d'exécution des binaires natifs.
Veuillez noter: Les lignes de journal de secours sont informatives, pas des erreurs. Si le rendu réussit, aucune action n'est nécessaire.
Solution
Option 1 : Déploiement standard avec IronPdf.Linux
Pour la plupart des déploiements Lambda plus Docker utilisant IronPdf.Linux, la configuration la plus simple et la plus fiable saute complètement le répertoire personnalisé :
Désactiver les téléchargements automatiques indique à IronPDF que les binaires natifs sont déjà empaquetés, et SingleProcess garde le moteur en un seul processus, ce qui convient au runtime limité de Lambda.
Option 2 : Déploiement avec IronPdf.Slim
Si vous envoyez IronPdf.Slim avec Docker, redirigez les chemins temporaires et de déploiement d'IronPDF vers /tmp, le seul répertoire inscriptible dans Lambda :
Ici CustomDeploymentDirectory gagne sa place : le paquet Slim télécharge les composants natifs lors de l'exécution, et /tmp leur donne un foyer inscriptible. Activer LinuxAndDockerDependenciesAutoConfig permet à IronPDF de configurer les dépendances Linux lors du premier lancement.
Quand le Configurer
Laissez-le non configuré lorsque : vous empaquetez les dépendances d'IronPDF telles que IronPdf.Linux avec votre projet, utilisez des déploiements complets sans téléchargements d'exécution, et la fonction peut tout atteindre depuis /var/task.
Configurez-le sur /tmp lorsque: vous utilisez IronPdf.Slim sans binaires natifs associés, comptez sur les téléchargements NuGet d'exécution pour des composants comme IronPdf.Native.Chrome.Linux, ou avez besoin de déploiements temporaires stockés dans le seul répertoire inscriptible de Lambda.
Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.