Docker Setup

The docker setup is intended for development & testing environments only. It is not suitable for production. For production environments, please use the install-script described above.

Option 2: Docker Setup

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

The docker set-up 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
17) Install Bloom Filter
i) Install Everything
p) show daemon status
w) restart all services
r) reboot
q) quit
Choose what to do:
  • After the installation is complete, you must stop the ta-node-1 service and wait for Nethermind to synchronize with the Shyft Network. You can check your Node status at (Nodes in green are at the tip of the chain and are synchronized):

  • Once synced, restart the ta-node-1 service then wait for events to be downloaded onto your Veriscope node. This can take a number of hours and can be checked in the Veriscope UI > Backoffice.

Stop ta-node-1 service

sudo systemctl stop ta-node-1

Restart ta-node-1 service

sudo systemctl restart ta-node-1

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 that includes address proofs

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

  • Once you have access, generate a GitHub classic Personal Access Token (PAT) with scopes equal to repo (full access).

  • Install Veriscope either using the setup-script or Veriscope IaC

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.