Node image for a JavaScript server side platform.
For more documentation on how Outrigger images are constructed and how to work with them, please see the documentation.
Based on outrigger/servicebase, which provides a CentOS-base, s6 init system and confd configuration templating.
Based on official Node images, specifically the Alpine variant, and adds special functionality on top. Currently that includes:
- tini init system
- Coordinated support for Yarn and npm
- Run services as the
node
user instead of asroot
.
We have switched to a simple templating mechanism to ease support for multiple node versions, assuming we want to handle future node versions in a manner identical to v8.
The examples in this repo use Yarn, but you can use npm as well.
docker run --rm -it outrigger/node:8
For a more thorough example of how you would use outrigger/node:2-node8 or greater in a "real" project, check out ./examples.
api: '3.4'
services:
app:
image: outrigger/node:8
container_name: projectname_app
command: "yarn install && yarn start"
labels:
com.dnsdock.name: app
com.dnsdock.image: projectname
network_mode: bridge
volumes:
- .:/code
In the current version of Node v4 and v6, npm install and start routines are built-in to the image. This makes them more project-centric out of the box.
docker run --rm -v ~/Project/node-app:/code outrigger/node:6
Outrigger images use Environment Variables and confd to "templatize" a number of Docker environment configurations. These templates are processed on startup with environment variables passed in via the docker run command-line or via your docker-compose manifest file. Here are the "tunable" configurations offered by this image.
This only applies to Node v4 and v6.
SKIP_NPM_INSTALL
: If this is set (to anything) it will not runnpm install
when the container boots.
Please email [email protected] with security concerns.