Docker Setup

As an alternative to the setup script described above, you can install Veriscope using Docker.

Before you start to use docker setup please finished all steps from Node Preparation.

Option 2: Docker Setup

The docker setup requires public hostname must not be a bare IP address.

Step 1 - Docker install

Verify that Docker Engine is installed correctly by running the hello-world image.

sudo docker run hello-world

This command downloads a test image and runs it in a container. When the container runs, it prints a message and exits.

Step 2 - Docker Compose

Verify that Docker Compose is installed correctly by checking the version.

sudo docker compose version

Step 3 - Docker Compose UP

In /opt/veriscope enter below command to build & run container.

sudo docker compose up -d

Check that Docker container is build correctly.

(If status is exited would be wrong , need deleted that container and try again)

sudo docker ps -a

Step 4 - Install Veriscope from script (In container)

Get into container.

sudo docker exec -it veriscope-laravel.test-1 bash

In "veriscope-laravel.test-1" container input below command to trigger auto installation script.

sudo scripts/setup-vasp.sh
+ Located in /opt/veriscope/
+ Service user will be forge

1) Refresh dependencies
2) Install/update nethermind
3) Set up new postgres user
4) Obtain/renew SSL certificate
5) Install/update NGINX
6) Install/update node.js web service
7) Install/update PHP web service
8) Update static node list for nethermind
9) Create admin user
10) Regenerate webhook secret
11) Regenerate oauth secret (passport)
12) Regenerate encrypt secret (EloquentEncryption)
13) Install Redis server
14) Install Passport Client Environment Variables
15) Install Horizon
16) Install Address Proofs
i) Install Everything
p) show daemon status
w) restart all services
r) reboot
q) quit
Choose what to do:

You can either step through each step — see note below — or choose i (Install Everything) and run steps 9 & 16 once that has completed.

For step 16 (Install Address Proofs) you will be prompted to enter a personal access token (type classic). Please follow the checklist below. If you have any questions, please contact your Veriscope representative.

  • Sign the Veriscope Trust Anchor agreement or an addendum to your existing agreement

  • Request access to the ShyftNetwork/addressproofs repo. The GitHub username that you provide will be added to the repo as a collaborator.

  • Generate a GitHub classic personal access token with scopes equal to repo (full access).

  • Install Veriscope

  • Once the installation is complete run step 16 in the set-up script. You will be prompted to enter the GitHub token created above. Enter and hit return. This downloads the proofs onto your node.

  • Verify that the addressproofs folder exists at /opt/veriscope/veriscope_addressproofs

  • Next, install the proofs by running the following commands:

pip3 install -r requirements.txt

Also install protobuf compiler from your system’s package manager:

sudo apt-get install protobuf-compiler

For some proof types, NodeJS is required. The Python library will call out to Javascript to run these verifications. Install NodeJS and then run:

npm install

Following this, you should be able to access and login to Veriscope at your VERISCOPE_SERVICE_HOST=subdomain.domain.com.

Next, please reach-out to your Shyft/Veriscope Account Manager to request your Trust Anchor to be verified. You will be transferred some test SHFT tokens at the same time which will enable you to transact on the Shyft Network.

Troubleshoot (In container)

Install net-tools.

sudo apt install net-tools

Check port status , please make sure your 8080 & 8090 were running.

sudo netstat -tulpn

If your 8080 or 8090 port not activated please restart node and wait for 1 min , then check port status again.

sudo systemctl restart ta-node-1
sudo systemctl restart ta-node-2
sudo systemctl restart nethermind

If wait for 1 min , then still cannot be used the webApplication (Veriscope) , make sure artifacts folder is available in veriscope_ta_node/ , if artifacts folder doesn’t in veriscope_ta_node/ , please put command line below:

sudo cp /opt/veriscope/chains/veriscope_testnet/artifacts/ -r /opt/veriscope/veriscope_ta_node/

Then restart ta-node-1 & ta-node-2 & nethermind , then try again.

If port not shown up or webApplication not working like expected , please contact your Shyft/Veriscope Account Manager to ask for help.