diff options
Diffstat (limited to 'playbooks/roles/nginx-proxy/templates')
-rw-r--r-- | playbooks/roles/nginx-proxy/templates/docker-compose.yml | 19 | ||||
-rw-r--r-- | playbooks/roles/nginx-proxy/templates/toplevel.conf.d/stream.conf | 46 |
2 files changed, 63 insertions, 2 deletions
diff --git a/playbooks/roles/nginx-proxy/templates/docker-compose.yml b/playbooks/roles/nginx-proxy/templates/docker-compose.yml index e0f56c4..c97f858 100644 --- a/playbooks/roles/nginx-proxy/templates/docker-compose.yml +++ b/playbooks/roles/nginx-proxy/templates/docker-compose.yml @@ -5,11 +5,24 @@ services: image: nginxproxy/nginx-proxy container_name: nginx-proxy ports: + # http - "80:80" - "443:443" + # smtp + - "25:25" + - "465:465" + - "587:587" + # imap + - "993:993" + # sieve + - "4190:4190" volumes: - /var/run/docker.sock:/tmp/docker.sock:ro - {{ nginx_proxy_base }}/certs:/etc/nginx/certs + - {{ nginx_proxy_base }}/toplevel.conf.d:/etc/nginx/toplevel.conf.d + environment: + - TZ={{ timezone }} + - DEPLOYMENT_TIME={{ now() }} networks: - proxy labels: @@ -24,8 +37,10 @@ services: - acme:/etc/acme.sh - {{ nginx_proxy_base }}/certs:/etc/nginx/certs environment: - - "DEFAULT_EMAIL={{ certs_email }}" - - "ACME_CHALLENGE=DNS-01" + - TZ={{ timezone }} + - DEPLOYMENT_TIME={{ now() }} + - DEFAULT_EMAIL={{ certs_email }} + - ACME_CHALLENGE=DNS-01 - "ACMESH_DNS_API_CONFIG={'DNS_API': 'dns_cf', 'CF_Key': '{{ cloudflare_token }}', 'CF_Email': '{{ cloudflare_email }}'}" networks: - proxy diff --git a/playbooks/roles/nginx-proxy/templates/toplevel.conf.d/stream.conf b/playbooks/roles/nginx-proxy/templates/toplevel.conf.d/stream.conf new file mode 100644 index 0000000..7e3b39d --- /dev/null +++ b/playbooks/roles/nginx-proxy/templates/toplevel.conf.d/stream.conf @@ -0,0 +1,46 @@ +stream { + log_format basic '$proxy_protocol_addr - [$time_local] ' + '$protocol $status $bytes_sent $bytes_received ' + '$session_time'; + upstream imaps { + server {{ vpn_proxy_filter_container_name }}:993; + } + upstream smtps { + server {{ vpn_proxy_filter_container_name }}:465; + } + upstream smtptls { + server {{ vpn_proxy_filter_container_name }}:587; + } + upstream smtp { + server {{ vpn_proxy_filter_container_name }}:25; + } + upstream managesieve { + server {{ vpn_proxy_filter_container_name }}:4190; + } + + server { + listen 993; + proxy_pass imaps; + proxy_protocol on; + } + server { + listen 25; + proxy_pass smtp; + proxy_protocol on; + } + server { + listen 587; + proxy_pass smtptls; + proxy_protocol on; + } + server { + listen 465; + proxy_pass smtps; + proxy_protocol on; + } + server { + listen 4190; + proxy_pass managesieve; + proxy_protocol on; + } +} |