Alpine Linux 3.6 Docker image with NodeJS v6.10.3
It's assumed that you have working ./package.json with resolvable dependencies and proper start script, so that npm install and npm start works.
-
without building an image:
docker run -it --rm \ --name my-node-project \ -p 5080:5080 \ -v $(pwd):/app \ anapsix/nodejs
You should customize your EXPOSE [] according to
server.js.
You can also add ENTRYPOINT, override CMD and add dependencies as needed.
-
building from
onbuildtag:# Dockerfile FROM anapsix/nodejs:onbuild EXPOSE 5080
To permanently install additional AlpineLinux packages, place one package name per line into
./deps.apk. Applies tolatestas well asonbuild.
For custom actions, create deps.sh executable script.
For build-time only dependencies (e.g.bsonnpm package requiresmakeandg++to compile c++ extention), use./deps_build.apk. All packages will be installed beforenpm installand removed immediately after, for the sake of making resulting image smaller. Applies tolatestas well asonbuild, except thatlatestwill not cleanup the build-time dependencies.
NOTE:
latesttries to resolve dependencies duringdocker run, before runningnpm install && npm start(assuming you did not override theCMD)onbuildresolves dependencies duringdocker build, cleans up build-time dependencies and the only command executed duringdocker runisnpm start(assuming you did not override theCMD)
Add ./examples