lexa-uw.nginx-in-docker
Ansible角色用于在Docker容器中设置和运行Nginx服务器。
这个角色将允许您在自己的Docker节点上安装Nginx服务器。 默认情况下,Nginx的SSL/TLS配置可获得"A+"的Qualys SSL Labs评级。
要求
此角色需要Ansible 2.5或更高版本。
角色变量
软件包选项:
nginx_global_config
全局配置文件的模板。
nginx_allow
允许访问服务器的IP地址列表。
nginx_dir
Nginx的基础目录。 (默认: /tmp/nginx)
nginx_htpasswd
htpasswd列表。
nginx_openssl_dhparam_numbits
生成dhparam证书的位数。 (默认: 4096)
容器选项
运行Docker容器的选项。默认:
nginx_container_command: []
nginx_container_env: {}
nginx_container_image: "nginx:alpine"
nginx_container_log_driver: "json-file"
nginx_container_name: "nginx"
nginx_container_network_mode: bridge
nginx_container_networks: []
nginx_container_pull: "yes"
nginx_container_recreate: "no"
nginx_container_restart_policy: "always"
nginx_container_restart: "no"
nginx_container_state: "started"
nginx_container_volumes: []
nginx_container_log_options: {
labels: "{{ nginx_container_name }}",
}
nginx_container_ports:
- 443:443
- 80:80
将角色添加到项目:
将角色添加到您的要求文件(例如 _requirements.yml_):
- src: https://github.com/lexa-uw/ansible-role-nginx-in-docker
version: v2.0.0
name: nginx
安装角色:ansible-galaxy install -r ./requirements.yml --roles-path ./roles/
剧本示例:
- hosts: all
vars_files:
- vars/main.yml
roles:
- { role: nginx }
在 vars/main.yml
中
nginx_allow:
- "127.0.0.1"
- "1.1.1.1"
nginx_dir: "{{ansible_env.PWD}}/docker/nginx"
nginx_htpasswd:
- "admin:$apr1nuGQ0aW41nBe8nisbHRz4JZ9vq43u"
nginx_openssl_dhparam_numbits: 4096
nginx_container_image: "nginx:1.15.9-alpine"
nginx_container_name: "nginx"
nginx_container_network_mode: "host"
nginx_container_ports: []