I have a npm package (npm v 5.5.1 and node version is 9.2.0). If i run npm install
on local machine then the postinstall
defined in package.json is executed but if I run the same command RUN npm install
in a Docker file i.e. when the command is run inside the container then the postinstall
step is not executed. Any inputs what could be the issue here ?
Try running install with --unsafe-perm
option. When running as root, npm won't run any scripts.
Alternatively, create a user in the Dockerfile and switch to that user:
FROM ...
RUN groupadd -r app && useradd -r -g app app
USER app
Another option to the selected answer: You could add this line to your dockerfile to configure your npm config inside the container (thus then allowing the execution of the postinstall script):
FROM ...
RUN npm config set unsafe-perm true
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With