{"id":15707744,"url":"https://github.com/thenets/ansible-nginx","last_synced_at":"2026-01-11T13:19:11.279Z","repository":{"id":87614201,"uuid":"175889185","full_name":"thenets/ansible-nginx","owner":"thenets","description":"Ansible role for Nginx + Steroids.","archived":false,"fork":false,"pushed_at":"2019-10-31T21:22:11.000Z","size":43,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-29T10:34:49.302Z","etag":null,"topics":["ansible-role","letsencrypt","nginx","nginx-proxy","ubuntu"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thenets.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-15T20:49:08.000Z","updated_at":"2019-11-01T16:40:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"d4eaffa5-8540-4072-b5e8-1d125baba0fb","html_url":"https://github.com/thenets/ansible-nginx","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thenets%2Fansible-nginx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thenets%2Fansible-nginx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thenets%2Fansible-nginx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thenets%2Fansible-nginx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thenets","download_url":"https://codeload.github.com/thenets/ansible-nginx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246343482,"owners_count":20762045,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible-role","letsencrypt","nginx","nginx-proxy","ubuntu"],"created_at":"2024-10-03T20:41:16.687Z","updated_at":"2026-01-11T13:19:11.253Z","avatar_url":"https://github.com/thenets.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ansible thenets.nginx\n\n[![Build Status](https://travis-ci.org/thenets/ansible-nginx.svg?branch=master)](https://travis-ci.org/thenets/ansible-nginx) [![CodeFactor](https://www.codefactor.io/repository/github/thenets/ansible-nginx/badge)](https://www.codefactor.io/repository/github/thenets/ansible-nginx)\n\nAnsible role for Nginx + Steroids.\n\n## Features\n\n- Proxy to the another HTTP server\n- Auto-generate Let's Encrypt certs and auto-renew\n- Create reports using [goaccess](https://github.com/allinurl/goaccess)\n- HTTP basic auth\n- Custom config for each domain/subdomain\n\n## Requirements\n\nThis role was tested only in the Ubuntu 18.04. Maybe it works in other Ubuntu and Debian versions.\n\n- Ubuntu 18.04\n- Open the `goaccess` stream port. (Default: 3030)\n\n## Role Variables\n\nTODO.\n\n## Example Playbook\n\nExample of how to use:\n\n```yaml\n---\n- hosts: \"my-nginx-hosts\"\n  remote_user: root\n  roles:\n  - role-nginx\n  vars:\n    # My servers list\n    servers:\n      front-end: \"1.1.1.1\"\n      back-end:  \"2.2.2.2\"\n      database:  \"3.3.3.3\"\n\n    # GoAccess report\n    goaccess:\n      port: \"3030\" # this port must be publicly opened in firewall\n\n    # HTTP Basic Auth\n    auth:\n      # Developer accounts\n      - keychain: \"dev-accounts\"\n        user: \"myUs3r\"\n        pass: \"myP4ss\"\n      - keychain: \"dev-accounts\"\n        user: \"cafe\"\n        pass: \"chocolate\"\n      # Sysadmin accounts\n      - keychain: \"sys-accounts\"\n        user: \"dante\"\n        pass: \"pizza\"\n\n    # ACME Let's Encrypt\n    acme_email: my-email@mail.com\n\n    # Nginx load balancer config\n    loadbalancer_sites:\n      # Simple proxy\n      - domain: \"unsecure.example.com\"\n        proxy_to: \"http://{{servers.front-end}}:8080\"\n\n      # Simple permanent redirect\n      - domain: \"temp.example.com\"\n        location_extra: |\n          rewrite ^ https://www.example.com? permanent;\n\n      # Proxy using HTTPS\n      #\n      # The 'https://app.example.com' will proxy to\n      # a server without SSL.\n      - domain: \"app.example.com\"\n        proxy_to: \"http://{{servers.front-end}}:8200\"\n        ssl: true\n\n      # Add HTTP auth\n      #\n      # Only 'sys-accounts' users have access.\n      - domain: \"jenkins.example.com\"\n        proxy_to: \"http://{{servers.back-end}}:8080\"\n        auth_keychain: \"sys-accounts\"\n\n      # Custom template: goaccess\n      #\n      # Generate real-time report from Nginx logs.\n      - domain: \"stats.example.com\"\n        template: \"goaccess\"\n\n      # Add custom config\n      - domain: \"blocked.example.com\"\n        proxy_to: \"http://{{servers.front-end}}:8080\"\n        server_extra: |\n          server_name   anotherblocked.example.com;\n        location_extra: |\n          gzip off;\n          add_header X-Robots-Tag \"noindex, follow\" always;\n```\n\n## License\n\nMIT\n\n## Author Information\n\nIf you have any question contact me at IRC Freenode at #thenets-opensource channel.\n\nOr check my other contact info at https://www.thenets.org/contact .\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthenets%2Fansible-nginx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthenets%2Fansible-nginx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthenets%2Fansible-nginx/lists"}