Under reverse proxy

예전에 시도했을 때에는 잘 안되었다. 이번에는 성공했다.

내가 시도한 환경은 도커 컨테이너에서 Grafana와 PostgreSQL, NGINX를 이용하여 80번 포트로 접속하도록 하는 것이다. 다른 경우로 사용할 것을 대비하여 subfolder에 연결되도록 했다.

/etc/grafana/grafana.ini 파일에서 [server] 부분을 수정한다.

[server]
domain = dorm.welovedoctor.com
root_url = http://dorm.welovedoctor.com/grafana/
serve_from_sub_path = true

/etc/nginx/sites-available/default 파일에서 다음과 같이 수정한다.

map $http_upgrade $connection_upgrade {
  default upgrade;
  '' close;
}

upstream grafana {
  server localhost:3000;
}

server {
  listen 80 default_server;
  listen [::]:80 default_server;
  root /var/www/html;
  server_name dorm.welovedoctor.com;
  location /grafana/ {
    proxy_set_header Host $host;
    proxy_pass http://grafana;
  }

  location /grafana/api/live/ {
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_set_header Host $host;
    proxy_pass http://grafana;
  }

}