Skip to content

intercube/ansible-role-nginx

 
 

Repository files navigation

Ansible NGINX Role

Ansible Galaxy Build Status

This role installs NGINX Open Source, NGINX Plus, the NGINX Amplify agent, or NGINX Unit on your target host.

Note: This role is still in active development. There may be unidentified issues and the role variables may change as development continues.

Deprecation Warnings:

  • There now is a separate role to manage and create NGINX configurations available here. Any new issues or PRs related to configuring NGINX should be submitted in the new NGINX Config repository. New issues or PRs related to configuring NGINX submitted in this repository will not be worked on (with the exception of major bugfixes). The NGINX configuration functionalities included in this role will be removed in an upcoming release.
  • NGINX Unit now has a separate role available here. Any new issues or PRs related to NGINX Unit should be submitted in the new NGINX Unit repository. New issues or PRs related to NGINX Unit submitted in this repository will not be worked on (with the exception of major bugfixes). The NGINX Unit functionalities included in this role will be removed in an upcoming release.

Requirements

Ansible

This role was developed and tested with maintained versions of Ansible. Backwards compatibility is not guaranteed.

Instructions on how to install Ansible can be found in the Ansible website.

Molecule

Molecule is used to test the various functionalities of the role.

Instructions on how to install Molecule can be found in the Molecule website.

Installation

Ansible Galaxy

Use ansible-galaxy install nginxinc.nginx to install the latest stable release of the role on your system.

Git

Use git clone https://github.com/nginxinc/ansible-role-nginx.git to pull the latest edge commit of the role from GitHub.

Platforms

The NGINX Ansible role supports all platforms supported by NGINX Open Source, NGINX Plus, the NGINX Amplify agent, and NGINX Unit:

NGINX Open Source

Alpine:
  - 3.9
  - 3.10
  - 3.11
  - 3.12
CentOS:
  - 6
  - 7
  - 8
Debian:
  - stretch
  - buster
FreeBSD:
  - 11.2+
  - 12
RedHat:
  - 6
  - 7.4+
  - 8
SUSE/SLES:
  - 12
  - 15
Ubuntu:
  - xenial
  - bionic
  - focal

NGINX Plus

Alpine:
  - 3.9
  - 3.10
  - 3.11
  - 3.12
Amazon Linux:
  - 2018.03
Amazon Linux 2:
  - any
CentOS:
  - 6.5+
  - 7.4+
  - 8
Debian:
  - stretch
  - buster
FreeBSD:
  - 11.2+
  - 12
Oracle Linux:
  - 6.5+
  - 7.4+
RedHat:
  - 6.5+
  - 7.4+
  - 8
SUSE/SLES:
  - 12
  - 15
Ubuntu:
  - xenial
  - bionic
  - focal

NGINX Amplify Agent

Amazon Linux:
  - 2017.09
CentOS:
  - 6
  - 7
Debian:
  - jessie
  - stretch
RedHat:
  - 6
  - 7
Ubuntu:
  - xenial
  - bionic
  - focal

NGINX Unit

Amazon Linux:
  - 2018.03
Amazon Linux 2:
  - any
CentOS:
  - 6
  - 7
  - 8
Debian:
  - stretch
  - buster
RedHat:
  - 6
  - 7
  - 8
Ubuntu:
  - xenial
  - bionic
  - focal

Role Variables

This role has multiple variables. The descriptions and defaults for all these variables can be found in the defaults/main directory in the following files:

Similarly, descriptions and defaults for preset variables can be found in the vars directory:

Example Playbooks

Working functional playbook examples can be found in the molecule/common directory in the following files:

Do note that if you install this repository via Ansible Galaxy, you will have to replace the role variable in the sample playbooks from ansible-role-nginx to nginxinc.nginx.

Other NGINX Roles

You can find an Ansible role to configure NGINX here

You can find an Ansible role to install and configure NGINX App Protect here

You can find an Ansible collection of roles to install and configure NGINX Controller here

You can find an Ansible role to install NGINX Unit here

License

Apache License, Version 2.0

Author Information

Alessandro Fael Garcia

Grzegorz Dzien

Tom Gamull

© F5 Networks, Inc. 2018 - 2020

About

Ansible role for NGINX

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 84.4%
  • Shell 15.6%