node-libcurl: not working on alpine

Dockerfile

FROM node:7.5-alpine
RUN apk add --no-cache libcurl
RUN npm install node-libcurl
RUN  echo "require('node-libcurl')"|node

docker build .

...
module.js:598
  return process.dlopen(module, path._makeLong(filename));
                 ^

Error: Error relocating /node_modules/node-libcurl/lib/binding/node_libcurl.node: __vsnprintf_chk: symbol not found
    at Object.Module._extensions..node (module.js:598:18)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/node_modules/node-libcurl/lib/Easy.js:40:29)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 22 (9 by maintainers)

Most upvoted comments

Not a big deal for me anymore I removed the node-libcurl dependency but you should mention on the readme that npm install may not work on some systems, depending on the ssl version they have and that there is no compatibility with alpine. That could help people deciding to not use this library if they plan to use docker at some point, otherwise this lib is amazing.

@dcharbonnier @JCMais is there any solution?

I still didn’t had time to check on this. And currently I cannot install Docker, since it blocks me from using VirtualBox (Windows).

working Dockerfile (but would be nice to have the binary)

FROM node:7.5-alpine
RUN apk add --no-cache libcurl python alpine-sdk curl-dev
RUN npm install node-libcurl --build-from-source
RUN  echo "require('node-libcurl')"|node