'Setting up reverse-proxy to AllegroGraph

I want to build a server that allows to access the gruff tool of AllegroGraph. I used to set it up locally using the provided docker image. That works nice, and I can access it via http://127.0.0.1:10035/#.

Now, I would like to include gruff in a docker set up, where we do have multiple docker containers running with docker compose.

The docker commands for agraph are:

  agraph:
    image: franzinc/agraph
    volumes:
      - agraph-data:/agraph/data
      - ${DSMS_AGRAPH_CFG}:/agraph/etc/agraph.cfg
    expose:
      - "10000-10035"
    networks:
      - intranet
    environment:
      - AGRAPH_SUPER_USER
      - AGRAPH_SUPER_PASSWORD
    restart: on-failure
    shm_size: 4g

In our set-up we can only allow port 80 and 443 to outside. Therefore, we use proxy_pass of nginx to redirect all requests from there.

This works e.g. for an instance of the jupyter notebook:

location /jupyter/ {
    proxy_pass http://jupyter:8888/jupyter/;
}

But when I try to set this up with AllegroGraph:

location /db/ {
    proxy_pass http://agraph:10035/;
}

I run into a problem. When I try to open the page. It gets reloaded constantly. I assume, that something in the AllegroGraph service is set up strangely, but I think there must be a way to actually solve this with a correct nginx location command.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source