Public | Automated Build

Last pushed: a month ago
Short Description
Node.js / NPM on Alpine Linux using alpine: 3.6
Full Description

Node / NPM Docker Image on Alpine

Deprecation notice and end of support.

The current container versions -- 9.1.0, 8.9.1, 6.12.0, 4.8.6 -- will be the last versions I produce and publish to Docker Hub. When I started creating these containers, the official Node Docker releases were not available on Alpine Linux. I took it upon myself to create these containers to support my own development workflow and to help myself learn more about Docker. I was hoping others might also find them useful. Since that time, the Node Docker team has begun publishing official Alpine Linux containers of their own. I now feel that these containers are no longer necessary and I have begun to move my own development environment over to using the official releases. I encourage anyone using these containers to also check out the official Node Alpine versions. If anyone would like to continue publishing these containers, you are more than welcome to fork my Github repo and pick up where I leave off!

This is a simple Node.js and NPM installation running on Alpine Linux. The following are the current tags I am creating. NOTE: the size in the badge from above is WRONG. Correct file sizes are listed below. However, you can still click on that link to see the correct layers.

I will bump these as Node versions change, but the older versions should remain in this repository. These images are base images, created to enhance my own workflow. You are more than welcome to use them, if you are interested.

The Node/NPM versions in the various tags are:

$ docker run --rm jkilbride/node-npm-alpine:9 node --version

$ docker run --rm jkilbride/node-npm-alpine:9 npm --version

$ docker run --rm jkilbride/node-npm-alpine:9 yarn --version

$ docker run --rm jkilbride/node-npm-alpine:8 node --version

$ docker run --rm jkilbride/node-npm-alpine:8 npm --version

$ docker run --rm jkilbride/node-npm-alpine:8 yarn --version

$ docker run --rm jkilbride/node-npm-alpine:6 node --version

$ docker run --rm jkilbride/node-npm-alpine:6 npm --version

$ docker run --rm jkilbride/node-npm-alpine:6 yarn --version

$ docker run --rm jkilbride/node-npm-alpine:4 node --version

$ docker run --rm jkilbride/node-npm-alpine:4 npm --version

$ docker run --rm jkilbride/node-npm-alpine:4 yarn --version

To use an image in your own Dockerfiles, add it to your FROM statement:

FROM jkilbride/node-npm-alpine

FROM jkilbride/node-npm-alpine:9

FROM jkilbride/node-npm-alpine:8

FROM jkilbride/node-npm-alpine:6

FROM jkilbride/node-npm-alpine:4


I routinely login to my running containers to poke around. For convenience, I have added some shell aliases to /etc/profile.d/ and enabled the /etc/profile.d/ file. If you would like to have these customizations available when you login to a container, you must specify a login shell on the docker command line:

$ docker exec -it [your-container-name] /bin/sh -l

You can also enable the customizations from inside the container at any time by sourcing the /etc/profile file:

# . /etc/profile

Be aware that I prefer vi keybindings. If you prefer the default emacs keybindings, type set -o emacs at the command prompt.


Inspired by


The code is available under the MIT License.

Docker Pull Command
Source Repository