This HOWTO contains instructions on how to build and configure your own free instance of Evernode Platform to connect your application to Everscale. The instructions and scripts below were verified on Ubuntu 20.04.
- Evernode DApp Server (DS)
- Table of Contents
- What is Evernode Dapp Server?
- Getting Started
- Stopping, restarting and deleting DApp Server
- Redeploying DApp Server
Evernode DS is a set of services enabling you to work with Everscale blockchain.
The core element of Evernode DS is Everscale node written in Rust focused on performance and safety. Evernode DS provides a set of services serving EVER SDK endpoint: scalable multi-model database ArangoDB with the information about all blockchain entities (like accounts, blocks, transactions, etc.) stored over time, distributed high-throughput, low-latency streaming platform Kafka, Everscale GraphQL Server (aka Q-Server) for serving GraphQL queries to the database and Nginx web-server.
All the Evernode DS services can be easily deployed with Docker/Docker Compose wrapped into unix shell scripts, provided below.
Note: Rust node is included in the Evernode DS, and doesn't have to be installed separately.
Configuration | CPU (cores) | RAM (GiB) | Storage (GiB) | Network (Gbit/s) |
---|---|---|---|---|
Recommended | 24 | 128 | 2000 | 1 |
DApp Server is storage I/O bound, so NVMe SSD disks are recommended for the storage.
Note: To connect to a DApp Server you are running with client applications (such as TONOS-CLI), it should have a domain name and a DNS record. Then its URL may be used to access it.
Adjust (if needed) TON-OS-DApp-Server/scripts/env.sh
:
- specify the network - use main.ton.dev for the main network and net.ton.dev for the developer network
- specify notification email
Set environment variables:
$ cd TON-OS-DApp-Server/scripts/
$ . ./env.sh
Ubuntu 20.04:
$ ./install_deps.sh
Note: Make sure to add your user to the docker group, or run subsequent command as superuser:
sudo usermod -a -G docker $USER
Deploy full node:
$ ./deploy.sh 2>&1 | tee ./deploy.log
Note: the log generated by this command will be located in the TON-OS-DApp-Server/scripts/
folder and can be useful for troubleshooting.
Note: call docker-compose commands from the TON-OS-DApp-Server/docker-compose/ton-node
folder.
To stop the node use the following command:
docker-compose stop
To restart a stopped node use the following command:
docker-compose restart
To remove the node use the following commands:
docker-compose down
git reset --hard origin/master
git clean -ffdx
Warning: all local files and changes will be deleted from the git tree.
Before redeploying DApp server, make sure to remove the node and reset the git branch:
cd TON-OS-DApp-Server/docker-compose/ton-node
docker-compose down
git reset --hard origin/master
git clean -ffdx
Otherwise redeployment will fail. When the branch is reset, repeat steps 2.1 - 2.3.