Preparation

Begin by cloning the Veriscope GitHub repo, permissioning a service user, and setting environment variables.

The Veriscope repo contains the following folders amongst others:

  • chains: the Nethermind Relay Node configuration. See Network References for more details.

  • scripts: the installation setup guide/sripts

  • veriscope_ta_dashboard: the Veriscope Web Application (Laravel/PHP)

  • veriscipe_ta_node: the NodeJS interface between the Web Application and the Relay Node

Update Your Machine/Server

Assuming you have a machine set-up, make sure it is up to date by running the commands below:

sudo apt update -y
sudo apt upgrade -y

Clone the Veriscope repo

git clone https://github.com/ShyftNetwork/veriscope.git

Create a service user

If needed, create a new Unix account to act as the service user. Ensure the service user is in appropriate groups. The setup recipe assumes the user who invokes 'sudo' is the service user.

Before continuing ensure you have a sudo user and run the following commands (e.g. for user forge):

sudo adduser forge

Next

sudo adduser forge syslog
Adding user `forge' to group `syslog' ...
Adding user forge to group syslog
Done.

Next

sudo adduser forge www-data

Move the Veriscope folder to /opt

mv veriscope /opt

Change the owner of /opt to your sudo user (e.g. forge)

sudo chown -R forge /opt

Set-up su (substitue) to your user

sudo su - forge

Navigate to /opt/veriscope/

​cd /opt/veriscope

Set environment variables

Edit the .env file in /opt/veriscope/ and add values for:

  • VERISCOPE_SERVICE_HOST = Your https host domain

  • VERISCOPE_COMMON_NAME = Your VASP name (just used for local purposes)

  • VERISCOPE_TARGET = either veriscope_testnet, fed_testnet or fed_mainnet. Choose veriscope_testnet for a first time installation.

# Provide a DNS name that can be used to reach your node from the Internet. Open ports 80 and 443 to it.
VERISCOPE_SERVICE_HOST=subdomain.domain.com

# Provide a common name for your organization - no Inc or Ltd needed. This is used for user interfaces only.
VERISCOPE_COMMON_NAME=Singapore VASP

# Identify a chain to deploy to - choose from the list of directory names in chains/ - veriscope_testnet fed_testnet fed_mainnet
VERISCOPE_TARGET=veriscope_testnet

Your choice of VERISCOPE_TARGET will install the relevant smart contract artifacts hosted in the tartget chain (including correct smart contract addresses which are installed at /opt/veriscope/veriscope_ta_node/artifacts.)

You can now run the set-up script.