server {
  listen 80 default_server;
  server_name _;

  # Using a variable here stops nginx from crashing if the dev container is restarted or becomes otherwise unavailable
  set $backend_upstream "http://api:3001";
  set $dashboard_upstream "http://dashboard:3002";
  set $newdashboard_upstream "http://revampdashboard:3000";

  location / {
    # Using a variable in proxy_pass also requires resolver to be set.
    # This is the address of the internal docker compose DNS server.
    resolver 127.0.0.11;
    proxy_pass $dashboard_upstream$uri$is_args$args;
  }
  
  location /new {
    resolver 127.0.0.11;
    proxy_pass $newdashboard_upstream$request_uri;
  }

  location /api {
    resolver 127.0.0.11;
    proxy_pass $backend_upstream$uri$is_args$args;
    proxy_redirect off;

    client_max_body_size 200M;
  }
}