Giter VIP home page Giter VIP logo

Comments (8)

santiagobasulto avatar santiagobasulto commented on May 20, 2024 9

Managed to make it work. Just adding more info for future coders:

Lambdas need the compiled binary files to work. The simplest solution is to clone the phantom-lambda-template repo and include the phantomJS path in the html-pdf library. Step by step:

  1. Clone the phantom-lambda-template repo repo:
    $ git clone https://github.com/justengland/phantom-lambda-template.git
  2. Configure html-pdf to use a different phantomjs binary:
var options = {
  // "format": "A4",
  // "orientation": "landscape",
  base: '...',
  phantomPath: './phantom-lambda-template/phantomjs'
};

Relevant:

xkcd

Thanks @alexcroox and @marcbachmann for your help.

from node-html-pdf.

alexcroox avatar alexcroox commented on May 20, 2024

Seems to be the solution

https://github.com/justengland/phantom-lambda-template

from node-html-pdf.

marcbachmann avatar marcbachmann commented on May 20, 2024

Yes, that's most likely the issue. There are other binary files of phantomjs on linux.
If you're running docker somewhere, you can install it on there.

from node-html-pdf.

santiagobasulto avatar santiagobasulto commented on May 20, 2024

Sorry to bother @alexcroox, but what was the solution for this? Just included the binary files?

from node-html-pdf.

marcbachmann avatar marcbachmann commented on May 20, 2024

The binaries need to be built on aws lambda. (I guess there are docker images)
Yes, maybe you can include the binary that's in there.
If it doesn't work I guess you can use some docker image that replicates the lambda instance. Just execute npm install using that one. https://github.com/lambci/docker-lambda

from node-html-pdf.

alexcroox avatar alexcroox commented on May 20, 2024

I included the binary with the source zip upload to lambda

from node-html-pdf.

skylarmb avatar skylarmb commented on May 20, 2024

I ran into this issue when calling the linux binary manually with child_process.execFile. In my case it was not the phantomjs binary itself that was the issue. It was some other architecture specific node module (im guessing child_process) that was being zipped up in my app when I deployed with serverless. npm installing / deploying the app on a linux machine instead of OSX fixed this.

from node-html-pdf.

oopets avatar oopets commented on May 20, 2024

Using docker containers from https://github.com/lambci/docker-lambda solves the issue mentioned by @skylarmb .

from node-html-pdf.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.