Chef cookbook that installs Nginx from source with HTTP2 and ALPN
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
attributes
recipes
.gitignore
LICENSE
README.md
metadata.rb

README.md

nginx_source_install Cookbook

This cookbook installs Nginx using my installer script with HTTP2 and ALPN.

Requirements

Platforms

  • Debian
  • Ubuntu
  • RedHat
  • CentOS

Chef

  • Chef 12.0 or later

Usage

nginx_source_install::default

To install the most recent stable version of Nginx:

Just include nginx_source_install in your node's run_list:

{
  "name":"my_node",
  "run_list": [
    "recipe[nginx_source_install]"
  ]
}

Mainline:

Install the experimental version of NGINX.

Default Value:

  • false

Ruby usage:

node['nginx']['mainline'] = true

JSON usage:

{
  "nginx": {
    "mainline": true
  }
}

Force:

Force the installation even if the version is the same as the one that is installed.

Default Value:

  • false

Ruby usage:

node['nginx']['force'] = true

JSON usage:

{
  "nginx": {
    "force": true
  }
}

Ignore Failure:

Chef will continue it's run even if this script fails.

Default Value:

  • false

Ruby usage:

node['nginx']['ignore_failure'] = true

JSON usage:

{
  "nginx": {
    "ignore_failure": true
  }
}

ALPN Support:

Compile NGINX with ALPN support for http2 ssl support.

Default Value:

  • true

Ruby usage:

node['nginx']['features']['alpn'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "alpn": true
    }
  }
}

Mail Module:

Compile NGINX with the mail module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['mail'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "mail": true
    }
  }
}

VTS Module:

Compile NGINX with the VTS module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['vts'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "vts": true
    }
  }
}

GeoIP Module:

Compile NGINX with the geoip module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['geoip'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "geoip": true
    }
  }
}

PageSpeed Module:

Compile NGINX with Google's PageSpeed module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['pagespeed'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "pagespeed": true
    }
  }
}

Cache Purge Module:

Compile NGINX with the cache purge module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['cache_purge'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "cache_purge": true
    }
  }
}

LDAP Auth Module:

Compile NGINX with the LDAP authentication module.

Default Value:

  • false

Ruby usage:

node['nginx']['features']['ldap_auth'] = true

JSON usage:

{
  "nginx": {
    "features": {
      "ldap_auth": true
    }
  }
}

License and Authors

Authors: Alex Markessinis

License: MIT