ansible/roles/docker/tasks/services/nginx_proxy.yml

48 lines
1.6 KiB
YAML

---
- name: create nginx-proxy volume folders
ansible.builtin.file:
name: '{{ services.nginx_proxy.volume_folder }}/{{ volume }}'
state: directory
loop:
- conf
- vhost
- html
- dhparam
- certs
loop_control:
loop_var: volume
- name: nginx proxy container
community.docker.docker_container:
name: nginx-proxy
image: nginxproxy/nginx-proxy:{{ services.nginx_proxy.version }}
restart_policy: always
networks:
- name: external_services
published_ports:
- 80:80
- 443:443
volumes:
- '{{ services.nginx_proxy.volume_folder }}/conf:/etc/nginx/conf.d'
- '{{ services.nginx_proxy.volume_folder }}/vhost:/etc/nginx/vhost.d'
- '{{ services.nginx_proxy.volume_folder }}/html:/usr/share/nginx/html'
- '{{ services.nginx_proxy.volume_folder }}/dhparam:/etc/nginx/dhparam'
- '{{ services.nginx_proxy.volume_folder }}/certs:/etc/nginx/certs:ro'
- /var/run/docker.sock:/tmp/docker.sock:ro
- name: nginx letsencrypt container
community.docker.docker_container:
name: nginx-proxy-le
image: nginxproxy/acme-companion:{{ services.nginx_acme_companion.version }}
restart_policy: always
volumes:
- '{{ services.nginx_proxy.volume_folder }}/vhost:/etc/nginx/vhost.d'
- '{{ services.nginx_proxy.volume_folder }}/html:/usr/share/nginx/html'
- '{{ services.nginx_proxy.volume_folder }}/dhparam:/etc/nginx/dhparam:ro'
- '{{ services.nginx_proxy.volume_folder }}/certs:/etc/nginx/certs'
- /var/run/docker.sock:/var/run/docker.sock:ro
env:
NGINX_PROXY_CONTAINER: nginx-proxy
when: letsencrypt_enabled