Chore: Add prometheus basic auth proxy (#16882)

pull/16976/head
Andrej Ocenas 6 years ago committed by GitHub
parent 7ebbeb09cb
commit 2abb009d68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      devenv/docker/blocks/prometheus_basic_auth_proxy/Dockerfile
  2. 6
      devenv/docker/blocks/prometheus_basic_auth_proxy/docker-compose.yaml
  3. 1
      devenv/docker/blocks/prometheus_basic_auth_proxy/htpasswd
  4. 34
      devenv/docker/blocks/prometheus_basic_auth_proxy/nginx.conf

@ -0,0 +1,4 @@
FROM nginx:alpine
COPY nginx.conf /etc/nginx/nginx.conf
COPY htpasswd /etc/nginx/htpasswd

@ -0,0 +1,6 @@
# This will proxy all requests for http://localhost:10090 to
# http://prometheus:9090 (Prometheus inside the docker compose)
nginxproxy:
build: docker/blocks/nginx_proxy
network_mode: host

@ -0,0 +1 @@
prom:$apr1$bfu32njz$HHDDTjaeWHDzQs2UMXP.C1

@ -0,0 +1,34 @@
events { }
http {
server {
listen 10090;
location / {
# Removes any Access-Control-Allow-Origin from Prometheus itself. When accessing from browser, having * or
# multiple values is not allowed in some cases
proxy_hide_header Access-Control-Allow-Origin;
# Allow the origin access. This is kinda wildcard but for browser it seems more strict and is needed for
# withCredentials requests.
add_header Access-Control-Allow-Origin $http_origin;
# When using withCredentials requests this must be true.
add_header Access-Control-Allow-Credentials true;
# Ask for basic auth except for pre flight OPTIONS request.
limit_except OPTIONS {
################################################################
# The htpasswd file contains user:
# prom: test
################################################################
auth_basic "prom";
auth_basic_user_file /etc/nginx/htpasswd;
}
proxy_pass http://prometheus:9090/;
}
}
}
Loading…
Cancel
Save