CtrlC-Root

ctrlcroot

10,188 downloads

9,299 latest version

2.0 quality score

Version information

  • 0.1.6 (latest)
  • 0.1.5
  • 0.1.4
  • 0.1.3
  • 0.1.1
  • 0.1.0
released Sep 18th 2013

Start using this module

Tags: nginx, web

Documentation

ctrlcroot/nginx — version 0.1.6 Sep 18th 2013

puppet-nginx

Puppet module for the NGINX web server. This module provides a higher level of abstraction than the module published by puppetlabs.

Requirements

  • puppetlabs/stdlib (4.1.0+)
  • ripienaar/concat (0.2.0+)

Quick Start

You can install nginx and configure it with a default HTTP and HTTPS site by simply declaring the base class:

class {'nginx': }

You can also disable the default sites and provide your own:

class {'nginx':
    defaults => false
}

nginx::site {'default':
    names => ['example.com', 'www.example.com'],
    root  => '/var/www'
}

nginx::site {'default-ssl':
    port  => '443',
    ssl   => true,
    names => ['example.com', 'www.example.com'],
    root  => '/var/www'
}

You can define redirects and reverse proxies:

nginx::site::redirect {'redmine_https':
    site   => 'default',
    url    => '/redmine',
    target => 'https://www.example.com/redmine'
}

nginx::site::proxy {'dev_site':
    site     => 'default-ssl',
    url      => '/testing',
    upstream => ['10.89.0.12:8000', '10.89.0.14:8000']
}

You can set up reverse proxies that support websocket connections. Please note that this requires NGINX version 1.4+ in order to work. The module currently does not check the server version.

nginx::site::proxy {'socketio':
    site       => 'default',
    url        => '/socket.io',
    upstream   => ['10.89.0.12:8002', '10.89.0.14:8002'],
    websockets => true
}

Platforms

This module currently supports debian and rhel platforms. It has been used in a production environment on the following operating systems:

  • Ubuntu 13.10
  • CentOS 6.4