Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

870
Vistas
Error: spawn ENOENT html-pdf nodejs in server

I have a problem when create pdf using html-pdf. In my local running well but in server can't work. my code below:

const fileName = './public/offering/' + dayjs().format('YYYY-MM-DD') + '-' + name[0] + '.pdf';

const htmlToPdfOptions = {
     type: 'PDF',
     height: '1200px',
     width: '816px',
     renderDelay: 2000,
     format: 'Letter',
     phantomPath: require('requireg')('phantomjs-prebuilt').path,
};
pdf.create(file, htmlToPdfOptions).toFile(fileName, async function (err: any, result: any) {
   if (err) return console.log(err, 'xxxxxxxxxxxxxx this error');
   console.log(result)
});

in my docker like this

FROM node:14-alpine

RUN npm install --global pm2

RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY . .

COPY package*.json ./
COPY . .

RUN npm install && npm run build

RUN npm install -g phantomjs --unsafe-perm

COPY . .

EXPOSE 8500

CMD ["pm2-runtime", "start", "src/index.js"]

Error in server is

Error: spawn /usr/src/app/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs ENOENT
     at Process.ChildProcess._handle.onexit (internal/child_process.js:269:19)
     at onErrorNT (internal/child_process.js:467:16)
     at processTicksAndRejections (internal/process/task_queues.js:82:21) {
   errno: -2,
   code: 'ENOENT',
   syscall: 'spawn /usr/src/app/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs',
   path: '/usr/src/app/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs',
   spawnargs: [
     '--local-url-access=false',
     '/usr/src/app/node_modules/html-pdf/lib/scripts/pdf_a4_portrait.js'
   ]
 }

Can anyone help me? because I have already tried some solutions on the web but nothing works or anyone can give me reference?. example: Nodejs + PhantomJS in Docker: Error: spawn - ENOENT

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Your Dockerfile has some strange copie commands. This should solve your problem

FROM node:14-alpine

RUN npm install --global pm2

RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY . .

RUN npm install && npm run build

RUN npm install -g phantomjs --unsafe-perm

EXPOSE 8500

CMD ["pm2-runtime", "start", "src/index.js"]

You should also add node_modules to your .dockerignore file.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda