elan.simple_nginx_reverse_proxy
Ansible 角色用于简单的 Nginx 反向代理安装
该角色将 Nginx 安装为简单的反向代理。
角色变量
有关配置选项的完整概述,请查看 defaults。
代理配置
此角色默认配置会自动重定向到 HTTPS,并允许您指定简单的块以配置 Nginx:
nginx_proxy: |
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8080;
}
TLS 证书
默认配置提供简单的自签名证书,如果不存在的话。 请确保用您自己的证书替换它们。 只需覆盖以下文件:
/etc/nginx/tls/certificate.key;
/etc/nginx/tls/certificate.crt;
高级配置
您可以设置 nginx_config
选项以覆盖默认配置,并指定您自己的配置文件集。
设置 src
和 dest
字段的列表,指定要部署的模板。
dest
字段始终指定相对于 /etc/nginx/
的位置:
roles:
- role: elan.simple_nginx_reverse_proxy
nginx_config:
- src: nginx.conf
dest: nginx.conf
请注意,该角色包含一个 nginx.conf
模板。
指定 src: nginx.conf
将始终使用包含的模板。
安全相关配置
该角色可以在 firewalld 或 ufw 中打开 Nginx 的端口。 它还可以设置 SELinux 布尔值以允许 Nginx 作为反向代理工作。 这些设置默认情况下是禁用的,您必须明确启用它们:
configure_for_firewalld: true
configure_for_ufw: true
configure_for_selinux: true
示例 Playbook
您的 playbook 可能如下所示:
---
- hosts: all
become: true
roles:
- role: elan.simple_nginx_reverse_proxy
configure_for_firewalld: true
开发
用于开发和测试,您可以使用 molecule。 使用 Podman 作为驱动程序,您可以像这样安装它 - 最好在虚拟环境中:
pip install -r .dev_requirements.txt
然后,您可以使用以下命令创建测试实例,应用 Ansible 配置 (converge) 并销毁测试实例:
molecule create
molecule converge
molecule destroy
许可证
作者信息
安装
ansible-galaxy install elan.simple_nginx_reverse_proxy
许可证
bsd-3-clause
下载
24.6k
拥有者
elan e.V. is a German non-profit organization helping universities and other higher education organizations with all things related to e-learning