Deploying the User Interface

When you deploy AnzoGraph via the RHEL/Centos tarball, the front end or user interface (UI) is not included. However, you can deploy the user interface container using Docker Desktop for Windows or Mac or Docker for Linux. This topic provides instructions for deploying the UI with Docker for Linux and then connecting the UI to your AnzoGraph cluster.

For information about installing Docker, see Docker Installation and Configuration Requirements.

Important The user interface uses gRPC protocol to connect to AnzoGraph, which requires a username and password for authentication. RHEL/CentOS deployments are not pre-configured with a gRPC user. Before deploying the user interface, create a username and password to use for the connection. How do I generate a gRPC username and password for RHEL/CentOS tarball deployments?

Follow the instructions below to deploy the AnzoGraph front end (user interface) on Docker for Linux.

Tip You might want to follow the steps in Post-installation steps for Linux to make sure that a non-root user can run Docker commands and you do not need to include "sudo" in the commands below.
  1. If necessary, start Docker with sudo systemctl start docker.
    NoteDocker caches images on the docker host. If you have deployed a front end container previously, that image is cached on the host and will be used to redeploy the front end. If you want to deploy the latest release, first pull the latest image. To do so, run the following command, and then proceed to the next step.
    docker pull cambridgesemantics/anzograph-frontend:latest

    You can deploy alternate front end versions by replacing the "latest" tag with any of the tags that are available on the AnzoGraph Frontend Docker Hub site.

  2. Run the following Docker command to deploy the AnzoGraph front end image. The command instructs Docker to start the container and configure HTTP and HTTPS access to the application by mapping the container ports to the HTTP and HTTPS ports on the local host:
    docker run -d -p host_http_port:8080 -p host_https_port:8443 --name=container_name cambridgesemantics/anzograph-frontend:tag

    The list below describes each of the parameters:

    • host_http_port is the port on the local host to use for HTTP access to the AnzoGraph user interface. In the container, the user interface binds to port 8080 for HTTP access. Cambridge Semantics recommends that you specify 80 to map the container's HTTP port to port 80 on the local host. If port 80 is in use, specify an alternate port for host_http_port.
    • host_https_port is the port on the local host to use for HTTPS access to the AnzoGraph user interface. In the container, the user interface binds to port 8443 for HTTPS access. Cambridge Semantics recommends that you specify 443 to map the container's HTTPS port to port 443 on the local host. If port 443 is in use, specify an alternate port for host_https_port.
    • container_name is the short name to use to identify the AnzoGraph front end container. For example, anzograph-frontend.
    • tag is the tag from the AnzoGraph Frontend Docker Hub site that identifies the version of the front end to deploy. If you pulled an image in the first step, this tag should match the tag from the pull command. Usually the latest tag is specified so the most recent release is deployed.

    For example:

    docker run -d -p 80:8080 -p 443:8443 --name=anzograph-frontend cambridgesemantics/anzograph-frontend:latest

    When the prompt returns the container ID, the container is running. For example:

    7ad7a2c2b60c0b15e75af9f05d41edc665497c58939da561249c9067f04b59fc
  3. The front end is now installed and ready to use. To open the user interface, open a browser and go to the following URL:
    https://IP_address

    Where IP_address is the IP address of the host server where Docker for Linux is installed. If you mapped the container's HTTPS port to port 443 on the host, you do not need to specify a port. If you specified a port other than 443, include the port in the URL. For example, https://10.100.0.1:8888.

    NoteIf you are using Docker for Linux locally on the same server as the AnzoGraph leader node and need to know the IP address of the front end container, you can run the following command:
    docker inspect container_name | grep '"IPAddress"' | head -n 1

    For example:

    docker inspect anzograph-frontend | grep '"IPAddress"' | head -n 1
    "IPAddress": "172.17.0.2"
  4. The browser displays the AnzoGraph login screen. On the login screen, specify the following credentials and then click Sign In.
    • Username: admin
    • Password: Passw0rd1

    The End User License Agreement (EULA) is displayed.

  5. Review the EULA and click Accept to proceed. The Query Console is displayed.

  6. The top right of the screen displays the Server Context. Because the user interface was deployed separately and is not associated with a database, the Server Context is "None." Click the Server Context drop-down list and select Manage Context.

    The Server Contexts screen is displayed:

  7. On the Server Contexts screen, click the menu icon () to the right of the default context and select Edit. The Edit Context screen is displayed:

  8. On the Edit Context screen, configure the connection to your AnzoGraph deployment by supplying the values for the following required fields:
    • IP: Specify the IP address for the AnzoGraph leader server. Even if this Docker container is installed on the AnzoGraph leader node, you must enter the routable IP address for the server.
    • Management Port (gRPC): This port is the system management communications port. It is set to 5600 by default and is rarely changed. Accept the default value of 5600 unless you have changed the AnzoGraph sysmgr_port setting in <install_path>/azg/config/settings.conf.
    • SPARQL Port (gRPC): This port is the secure, encrypted, gRPC-based protocol port for sending SPARQL queries and receiving results. It is set to 5700 by default and is rarely changed. Accept the default value of 5700 unless you have changed the anzo_protocol_port setting in <install_path>/azg/config/settings.conf.
    • Bolt Port: This field is for future use. Accept the default value of 0.
    • Username: This is the gRPC user name that you created for the connection. How do I generate a gRPC username and password for RHEL/CentOS tarball deployments?
    • Password: This is the password that you created for the gRPC user.
  9. When you have supplied all of the connection details, click Test Connection at the bottom of the screen to ensure that the connection is valid. For example:

    If the test fails, adjust the values as needed and test the connection again.

  10. Click Save to save the connection. At the top of the screen, click the Server Context drop-down list again and select default. The context is now green to show that the user interface is now connected:

You can now use the user interface to query and manage your AnzoGraph deployment. For more information about the user interface, see Using the Admin Console.