# IronPDF on AWS Lambda Without Docker
IronPDF działa na AWS Lambda, ale tylko wewnątrz funkcji Lambda stworzonej z niestandardowego obrazu kontenera Docker. Standardowe środowisko Lambda bez Docker brakuje natywnych bibliotek Linux, których IronPDF potrzebuje, więc praca w PDF tam zawodzi.
IronPDF zależy od kilku natywnych bibliotek Linux, w tym:
- `gcc-c++`
- `glibc-devel.i686`
- `glibc.i686`
- `pango.x86_64`
Te biblioteki nie są domyślnie obecne w standardowych środowiskach AWS Lambda. Uruchomienie IronPDF w funkcji Lambda bez Docker zwykle ujawnia jedno z następujących:
```txt
Native errors related to missing libraries
Failures in PDF generation or rendering
Crashes or instability when calling IronPdf methods
```
Główną przyczyną jest silnik renderujący: IronPDF napędza wewnętrznie Chrome, a samo Chrome polega na natywnych komponentach Linux. Minimalne środowiska bezserwerowe, jak standardowe obrazy AWS Lambda, nie dostarczają tych komponentów i nie mogą być niezawodnie zainstalowane w czasie wykonywania.
## Rozwiązanie
Wdroż IronPDF wewnątrz niestandardowego obrazu kontenera Docker, który instaluje wszystkie wymagane natywne zależności z góry. To daje Lambda w pełni zgodne środowisko zamiast zredukowanego środowiska wykonawczego.
```dockerfile
FROM public.ecr.aws/lambda/dotnet:8
# install necessary packages
RUN dnf update -y
RUN dnf install -y gcc-c++ pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 dbus-glib-devel
RUN dnf install -y libXdamage.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64
RUN dnf install -y libXrandr.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi
RUN dnf install -y xorg-x11-fonts-75dpi xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc
RUN dnf install -y mesa-libgbm.x86_64
RUN dnf install -y nss-3.90.0-3.amzn2023.0.4.x86_64
WORKDIR /var/task
COPY "bin/Release/lambda-publish" .
CMD ["AWSLambdaNet8Container::AWSLambdaNet8Container.PrintPdf::FunctionHandler"]
```
Linie `dnf install` importują zależności renderowania Chrome; pozycja `CMD` kieruje Lambda na twój uchwyt funkcji w opublikowanym wyniku.
(Standardowe środowiska AWS Lambda bez Docker nie mogą uruchomić IronPDF. Użyj funkcji opartej na Docker, w przeciwnym razie generowanie PDF zawiedzie.)
Aby uzyskać pełne przeprowadzenie, zobacz [Using IronPDF to create PDF files on AWS Lambda](/get-started/aws/).
IronPDF działa na AWS Lambda, ale tylko wewnątrz funkcji Lambda stworzonej z niestandardowego obrazu kontenera Docker. Standardowe środowisko Lambda bez Docker brakuje natywnych bibliotek Linux, których IronPDF potrzebuje, więc praca w PDF tam zawodzi.
IronPDF zależy od kilku natywnych bibliotek Linux, w tym:
gcc-c++
glibc-devel.i686
glibc.i686
pango.x86_64
Te biblioteki nie są domyślnie obecne w standardowych środowiskach AWS Lambda. Uruchomienie IronPDF w funkcji Lambda bez Docker zwykle ujawnia jedno z następujących:
Native errors related to missing librariesFailures in PDF generation or renderingCrashes or instability when calling IronPdf methods
Native errors related to missing libraries
Failures in PDF generation or rendering
Crashes or instability when calling IronPdf methods
Text
Główną przyczyną jest silnik renderujący: IronPDF napędza wewnętrznie Chrome, a samo Chrome polega na natywnych komponentach Linux. Minimalne środowiska bezserwerowe, jak standardowe obrazy AWS Lambda, nie dostarczają tych komponentów i nie mogą być niezawodnie zainstalowane w czasie wykonywania.
Rozwiązanie
Wdroż IronPDF wewnątrz niestandardowego obrazu kontenera Docker, który instaluje wszystkie wymagane natywne zależności z góry. To daje Lambda w pełni zgodne środowisko zamiast zredukowanego środowiska wykonawczego.
FROM public.ecr.aws/lambda/dotnet:8
# install necessary packages
RUN dnf update -y
RUN dnf install -y gcc-c++ pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 dbus-glib-devel
RUN dnf install -y libXdamage.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64
RUN dnf install -y libXrandr.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi
RUN dnf install -y xorg-x11-fonts-75dpi xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc
RUN dnf install -y mesa-libgbm.x86_64
RUN dnf install -y nss-3.90.0-3.amzn2023.0.4.x86_64
WORKDIR /var/task
COPY "bin/Release/lambda-publish" .
CMD ["AWSLambdaNet8Container::AWSLambdaNet8Container.PrintPdf::FunctionHandler"]
Text
Linie dnf install importują zależności renderowania Chrome; pozycja CMD kieruje Lambda na twój uchwyt funkcji w opublikowanym wyniku.
(Standardowe środowiska AWS Lambda bez Docker nie mogą uruchomić IronPDF. Użyj funkcji opartej na Docker, w przeciwnym razie generowanie PDF zawiedzie.)
Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.