Graphileon Server edition installation

version AU20181210

Recommendations

  1. Install Graphileon server on Ubuntu 18.04 x64 server.
  2. Setup 2 graph database instances (Neo4j or Memgraph): one for the Graphileon applications and one for data.
  3. Install Graphileon server on a limited user account (called graphileon for example)

Prerequisites

  1. One or more graph database instances (Neo4j or Memgraph).
  2. If you want to use the Graphileon server over secured HTTPS connection you need to generate an SSL key and certificate and put them (or symbolic link them) in the ./persistent/ssl folder of Graphileon.

Installation of Graphileon server:

Extract archive tar -xvzf graphileon-server.tar.gz (the file name may vary). The application will be extracted into a new graphileon folder. The application executable is ./graphileon which is a compiled binary. No other libraries need to be installed for it to work.

Graphileon server setup

You need to setup how the application will be accessible from the browser. The URL of the application can be:

  • the server/machine IP where Graphileon is installed
  • or domain name of the server if you have setup a DNS server to point to the machine

The port where the application is accessible. This is depending on the connection type:

  • for HTTP it is the port setting
  • for HTTPS is it the https.port setting (this can be used only if there is a SSL key and certificate available to the application)

Edit the file ./persistent/config/config.json

You should set:

  • port: the port the application will listen for HTTP connections. By default is 3000. 80 is the standard HTTP port.
  • https.port: the port the application will listen for HTTPS connections. By default is 3001. 443 is the standard HTTPS port.
  • https.sslKey: path to a generated ssl key to use for HTTPS connections
  • https.sslCert: path to a generated ssl certificate generated with the key to use for HTTPS connections
  • allowedDomains: the domains the server will accept requests from. Depending on the setup you need to add:
    "<machine-ip>:<http-port>",
    "<machine-ip>:<https-port>", 
    "<machine-domain-name>:<http-port>",
    "<machine-domain-name>:<https-port>"
  • url: the address that the frontend (browser application) will connect to the backend (server application). It should be one of:

    • <machine-domain-name>:<https-port> if you have a domain name for the machine and setup HTTPS connection
    • <machine-ip:https-port> if you have setup HTTPS connections
    • <machine-domain-name>:<http-port> if there is a domain name for the server

    or

    • <machine-ip>:<http-port> if there is no domain name and the application will use HTTP.

Where:

  • <machine-ip> is the actual IP of the server machine,
  • <machine-domain-name> is the domain name set for the server (ex: graphileon.acme-corporation.com)
  • <http-port> is the port set for HTTP connections (omit if it is 80)
  • <https-port> is the port set for HTTPS connections (omit if it is 443)

Allow start as normal (linux) user

If you setup the HTTP or HTTPS ports under 1024 you need to allow the Graphileon rights to use those ports when executed as a normal user:

sudo setcap cap_net_bind_service=+ep ./graphileon

(in the root Graphileon folder)

Setup server autostart:

You can set the system to automatically start the Graphileon server on boot using the following commands:

sudo nano /etc/rc.local

Add the line: su <graphileon_user> -- -c "cd <graphileon_path> && ./graphileon &"

Where:

  • <graphileon_user> is an existing linux user that the application will run as
  • <graphileon_path> is the absolute path to the Graphileon server folder

Set the file as executable: sudo chmod +x /etc/rc.local

Start Graphileon server

You can start the server by running: ./graphileon

Or you can run it in the background with: ./graphileon &

Stores, application and license setup

You can now access the application in the browser with the ip or domain name of the server. Ex <machine-domain-name>:<http-port> or <machine-ip>:<http-port>

At first load you will access the settings page. Here you need to add the

  • graph store connection settings
  • users
  • license(s)

This initial setup is described in the online Graphileon documentation (section Settings and further).

License

You are provided with a license text similar to the example below. This whole text, including the [BEGIN] and [END] tags should be inserted into the 'Graphileon license information' area on the License page of the Settings form. Saving the form and applying the settings will activate the license.

[BEGIN]
expires: 2019-06-30
key: IHYTR-PJRTE-MKTHF
name: Acme-Corporation
..
[END]

The license can be verified at any time using the [Check license] button on the default dashboard.