Add an nginx container to do crazy things with traefik

This commit is contained in:
Jake Howard 2022-01-16 14:08:29 +00:00
parent d5c7d94ac8
commit 6c0314b758
Signed by: jake
GPG key ID: 57AFB45680EDD477
5 changed files with 43 additions and 0 deletions

View file

@ -17,6 +17,7 @@ services:
- "{{ private_ip }}:8080:8080" - "{{ private_ip }}:8080:8080"
depends_on: depends_on:
- docker_proxy - docker_proxy
- nginx
networks: networks:
- default - default
- traefik - traefik
@ -33,6 +34,14 @@ services:
networks: networks:
- proxy_private - proxy_private
shenanigans:
image: nginx:alpine
restart: unless-stopped
volumes:
- /opt/traefik/nginx.conf:/etc/nginx/conf.d/default.conf:ro
networks:
- proxy_private
networks: networks:
traefik: traefik:
external: true external: true

View file

@ -8,3 +8,7 @@ http:
headers: headers:
customResponseHeaders: customResponseHeaders:
Permissions-Policy: interest-cohort=() Permissions-Policy: interest-cohort=()
shenanigans:
forwardAuth:
address: http://shenanigans

View file

@ -0,0 +1,14 @@
# NOTE: Use `$http_x_forwarded_host` intead of `$host`.
server {
listen 80 default_server;
# Get IP correctly
real_ip_header X-Forwarded-For;
set_real_ip_from 0.0.0.0/0;
# Allow everything through by default
location / {
return 200;
}
}

View file

@ -17,6 +17,7 @@ entryPoints:
middlewares: middlewares:
- floc-block@file - floc-block@file
- compress@file - compress@file
- shenanigans@file
tls: tls:
certresolver: le certresolver: le
domains: domains:

View file

@ -106,3 +106,18 @@
- name: fail2ban - name: fail2ban
include: fail2ban.yml include: fail2ban.yml
when: with_fail2ban when: with_fail2ban
- name: Check for nginx config
stat:
path: /opt/traefik/nginx.conf
register: nginx_file
become: true
- name: Create nginx config, if it doesn't exist already
template:
src: files/nginx.conf
dest: /opt/traefik/nginx.conf
mode: "0600"
when: not nginx_file.stat.exists
notify: restart traefik
become: true