jshimko / meteor-launchpad

A base Docker image for Meteor applications.
https://hub.docker.com/r/jshimko/meteor-launchpad/
MIT License
276 stars 152 forks source link

Installing native node modules #73

Open luzlab opened 7 years ago

luzlab commented 7 years ago

Hi - I'm trying to dockerize a meteor app that uses the node-rdkafka npm module. This requires node-gyp, an npm module, to be installed globally.

I tried a few things:

  1. Adding node-gyp to package json as a regular dependancy. Result: Successfully build the docker container.

    screen shot 2017-10-24 at 10 40 14 am
  2. Adding a preinstall script with npm install --global node-gyp. Result: Node-gyp fails to install globally and the docker container fails to build.

  3. Adding a preinstall script with npm install node-gyp. Result: Node-gyp installs locally but fails to run and the docker container fails to build.\

screen shot 2017-10-24 at 10 38 25 am

What do you think the best way to handle npm dependancies that require node-gyp? My thought is to handle node-gyp installation like the optional dependancies and add a INSTALL_NODE_GYP build arg/launchpad.conf variable.