Guides
August 30, 2022

Zeeka: Installation Guide

Zeeka - новая блокчейн инфраструктура, основанная на технологии Zero-knowledge proof. Zeeka предлагает сжимать пакеты переходов состояний (транзакций) в доказательства действительности постоянного размера, которые будут храниться в блокчейне. Zeeka предлагает новую концепцию под названием Zero Contracts. Нулевые контракты являются эквивалентом смарт-контрактов в некоторых блокчейнах, таких как Ethereum. Эти контракты будут выражены в виде математических ограничений, а не байт-кодов виртуальной машины.

Форма регистрации в награждаемый тестнет

Гайд актуален для версии v0.2.2

DYOR:

Website
Twitter
Discord
Whitepaper
Github

Оглавление


Подготовка сервера

Оглавление

На данном этапе минимальные требования к серверу составляют 1 CPU, 1 GB RAM, 30 GB SSD. Можно поставить на Hetzner - CPX11 либо подселить к другой ноде на имеющемся сервере. Zeeka использует 8765 порт.

Обновляем пакеты

sudo apt update && sudo apt upgrade -y

Устанавливаем необходимые пакеты

sudo apt install wget jq git libssl-dev cmake -y

Устанавливаем Rust

# устанавливаем необходимые пакеты
sudo apt install curl build-essential gcc make -y
# загружаем установочный скрипт Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Выбираем пункт 1) продолжить установку (по умолчанию).

# активируем среду Rust для текущей оболочки
source ~/.profile
source ~/.cargo/env

Установка и запуск

Оглавление

Клонируем репозиторий и переходим в папку с нодой

git clone https://github.com/ziesha-network/bazuka && cd bazuka

Дополнительно можно сделать форк репозитория проекта для увеличения активности вашего гитхаба.

Собираем бинарные файлы

cargo install --path .

Создаем новый кошелек (например Keplr) и сохраняем мнемоник фразу в надежном месте.

Инициализируем ноду, указываем мнемоник фразу вашего кошелька в команде

bazuka init --seed '<мнемоник фраза кошелька>' --network chaos --node 127.0.0.1:8765 

Создаем переменную с вашим IP и ником в дискорде

ZEEKA_IP=<ваш IP>
DISCORD_HANDLE=<ваш ник в дискорде вместе с цифрами>  

Сохраняем переменные, перезагружаем .bash_profile и проверяем значения переменных

echo "export ZEEKA_IP="${ZEEKA_IP}"" >> $HOME/.bash_profile
echo "export DISCORD_HANDLE="${DISCORD_HANDLE}"" >> $HOME/.bash_profile
source $HOME/.bash_profile
echo -e "\nzeeka_ip > ${ZEEKA_IP}\n"
echo -e "\ndiscord_handle > ${DISCORD_HANDLE}\n"

Запускать ноду будем в скрине вместе со скриптом автоматического обновления

Cоздаем скрин для запуска ноды

screen -S autobazuka

Запускаем скрипт

./autobazuka node --listen 0.0.0.0:8765 --external $ZEEKA_IP:8765 --network chaos --db ~/.bazuka-chaos --bootstrap 144.91.101.166:8765 --bootstrap 43.156.240.254:8765 --bootstrap 185.9.187.123:8765 --bootstrap 193.46.243.156:8765 --bootstrap 34.71.206.2:8765 --discord-handle $DISCORD_HANDLE

Выходим из скрина при помощи сочетания клавиш Ctrl+A+D (убедитесь, что выбрана английская раскладка клавиатуры)

Для возвращения в скрин используем команду

screen -x autobazuka

Создание кошелька Keplr

Оглавление

  • В Google Chrome или Brave cкачиваем расширение Keplr по ссылке
  • Переходим в расширение и нажимаем "Create new account"
  • Вводим имя аккаунта и пароль, сохраняем мнемоник фразу в надежном месте
  • Составляем из предложенных слов свою мнемоник фразу
  • Готово!

Автоматическое обновление (не актуально)

Оглавление

Cоздаем скрин для запуска скрипта автоматического обновления

screen -S autobazuka

Запускаем скрипт

./autobazuka node --listen 0.0.0.0:8765 --external $ZEEKA_IP:8765 --network chaos --db ~/.bazuka-chaos --bootstrap 144.91.101.166:8765 --bootstrap 43.156.240.254:8765 --bootstrap 185.9.187.123:8765 --bootstrap 193.46.243.156:8765 --bootstrap 34.71.206.2:8765 --discord-handle $DISCORD_HANDLE

Выходим из скрина при помощи сочетания клавиш Ctrl+A+D (убедитесь, что выбрана английская раскладка клавиатуры)

Для возвращения в скрин используем команду

screen -x autobazuka

Обновление v0.3.4

Оглавление

Останавливаем ноду

sudo systemctl stop zeekad

Обновляем бинарные файлы

cd bazuka 
git pull origin master 
cargo install --path .

Удаляем данные предыдущих тестнетов

rm ~/.bazuka.yaml

Инициализируем ноду

bazuka init --mnemonic 'ваша_мнемоник_фраза' --network groth --bootstrap 23.34.12.45:8765 --bootstrap 34.56.78.23:8765

Удаляем старый сервисный файл

cd
rm -rf /etc/systemd/system/zeekad.service

Создаем новый сервисный файл

printf "[Unit]
Description=Zeeka node
After=network.target

[Service]
User=$USER
ExecStart=`RUST_LOG=info which bazuka` node start --discord-handle \"$DISCORD_HANDLE\"
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/zeekad.service

Запускаем сервис

sudo systemctl daemon-reload && sudo systemctl enable zeekad
sudo systemctl restart zeekad

Проверяем логи

sudo journalctl -fn 100 -u zeekad

Удаление ноды

Оглавление

Для удаления ноды выполните следующие команды

systemctl stop zeekad && systemctl disable zeekad
rm -rf $HOME/bazuka /usr/bin/bazuka /etc/systemd/system/zeekad.service
systemctl daemon-reload

Nodera

Telegram | Discord | Twitter