Skip to content

Node image for a JavaScript based server side platform

License

Notifications You must be signed in to change notification settings

phase2/docker-node

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Outrigger Node

Node image for a JavaScript server side platform.

GitHub tag Docker Stars Docker Pulls MicroBadger

For more documentation on how Outrigger images are constructed and how to work with them, please see the documentation.

Node <= v6

Based on outrigger/servicebase, which provides a CentOS-base, s6 init system and confd configuration templating.

Node v8, v10

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 as root.

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.

Usage Example

The examples in this repo use Yarn, but you can use npm as well.

Docker Run - Node REPL

docker run --rm -it outrigger/node:8

Docker Compose - Project-style

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

Node v4 and v6

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

Environment Variables

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 run npm install when the container boots.

Security Reports

Please email outrigger@phase2technology.com with security concerns.

Maintainers

Phase2 Logo