Redirect nginx authentication requests to the admin container
This commit is contained in:
@@ -46,18 +46,21 @@ http {
|
||||
}
|
||||
|
||||
location /webmail {
|
||||
rewrite ^/webmail/(.*) /$1 break;
|
||||
proxy_pass http://webmail;
|
||||
}
|
||||
{% endif %}
|
||||
|
||||
{% if ADMIN == 'true' %}
|
||||
location /admin {
|
||||
location /admin/ui {
|
||||
rewrite ^/admin/(.*) /$1 break;
|
||||
proxy_pass http://admin;
|
||||
}
|
||||
{% endif %}
|
||||
|
||||
{% if WEBDAV != 'none' %}
|
||||
location /webdav {
|
||||
rewrite ^/webdav/(.*) /$1 break;
|
||||
proxy_pass http://webdav:5232;
|
||||
}
|
||||
{% endif %}
|
||||
@@ -66,7 +69,7 @@ http {
|
||||
|
||||
mail {
|
||||
server_name {{ HOSTNAME }};
|
||||
auth_http http://{{ ADMIN_ADDRESS }}/nginx;
|
||||
auth_http http://{{ ADMIN_ADDRESS }}/internal/nginx;
|
||||
proxy_pass_error_message on;
|
||||
|
||||
server {
|
||||
|
||||
@@ -7,6 +7,7 @@ import socket
|
||||
convert = lambda src, dst: open(dst, "w").write(jinja2.Template(open(src).read()).render(**os.environ))
|
||||
|
||||
# Actual startup script
|
||||
if "ADMIN_ADDRESS" not in os.environ:
|
||||
os.environ["ADMIN_ADDRESS"] = socket.gethostbyname("admin")
|
||||
convert("/conf/nginx.conf", "/etc/nginx/nginx.conf")
|
||||
os.execv("/usr/sbin/nginx", ["nginx", "-g", "daemon off;"])
|
||||
|
||||
Reference in New Issue
Block a user