ansible-collection-core/roles/podman_keycloak/templates/nginx.conf
irl e098840fab
Some checks failed
Ansible Lint Check / lint (push) Failing after 57s
feat(podman_keycloak): nginx enhancements (buffering + DNS)
* lookup of the keycloak container is at runtime to allow for
  the keycloak container being restarted while nginx is running
* increased buffer sizes to permit for larger signed SAML exchanges
  (was required for Google Workspace)
2025-11-30 15:02:54 +00:00

49 lines
1.2 KiB
Nginx Configuration File

# {{ ansible_managed }}
resolver 10.89.0.1 ipv6=off valid=10s;
upstream keycloak {
zone keycloak_upstream 64k;
server keycloak:8080 resolve;
}
server {
listen 80;
listen [::]:80;
server_name {{ podman_keycloak_keycloak_hostname }};
server_tokens off;
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
location / {
return 301 https://{{ podman_keycloak_keycloak_hostname }}$request_uri;
}
}
server {
listen 443 default_server ssl;
listen [::]:443 ssl;
http2 on;
server_name {{ podman_keycloak_keycloak_hostname }};
server_tokens off;
ssl_certificate /etc/letsencrypt/live/{{ podman_keycloak_keycloak_hostname }}/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/{{ podman_keycloak_keycloak_hostname }}/privkey.pem;
location / {
proxy_pass http://keycloak;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port 443;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
}
}