Installs Node.js on RHEL/CentOS or Debian/Ubuntu.
Requires the EPEL repository on RedHat/CentOS (you can install it by simply adding the geerlingguy.repo-epel
role to your playbook).
Available variables are listed below, along with default values (see defaults/main.yml
):
nodejs_version: "0.10"
The Node.js version to install. "0.10" is the default and works on all supported OSes. "0.12" and "4.x" are supported on the latest Debian/Ubuntu systems, and somewhat on RHEL/CentOS 7, but are not as stable on n-1 OS releases.
nodejs_forever: true
Whether to install Forever, a simple process manager for Node.js. With forever installed, you can start a Node.js app with the command forever start /path/to/app.js
, and manage the app via forever
much the same as you would manage other services on your server with service
.
nodejs_npm_global_packages: []
Add a list of npm packages with a name
and (optional) version
to be installed globally. For example:
nodejs_npm_global_packages:
# Install a specific version of a package.
- name: jslint
version: 0.9.3
# Install the latest stable release of a package.
- name: node-sass
None.
- hosts: utility
vars_files:
- vars/main.yml
roles:
- geerlingguy.nodejs
Inside vars/main.yml
:
nodejs_forever: true
nodejs_npm_global_packages:
- name: jslint
- name: node-sass
MIT / BSD
This role was created in 2014 by Jeff Geerling, author of Ansible for DevOps.