Zeeka: Installation Guide
Zeeka - новая блокчейн инфраструктура, основанная на технологии Zero-knowledge proof. Zeeka предлагает сжимать пакеты переходов состояний (транзакций) в доказательства действительности постоянного размера, которые будут храниться в блокчейне. Zeeka предлагает новую концепцию под названием Zero Contracts. Нулевые контракты являются эквивалентом смарт-контрактов в некоторых блокчейнах, таких как Ethereum. Эти контракты будут выражены в виде математических ограничений, а не байт-кодов виртуальной машины.
Дисклеймер: Гайд был благополучно украден у умных людей и немножко переделан под себя.
Подготовка сервера
На данном этапе минимальные требования к серверу составляют 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/zeeka-network/bazuka && cd bazuka git pull origin master
Собираем бинарные файлы
cargo install --path .
Создаем новый кошелек (например Keplr) и сохраняем мнемоник фразу в надежном месте.
Инициализируем ноду, указываем мнемоник фразу вашего кошелька в команде
bazuka init --seed '<мнемоник фраза кошелька>' --network debug --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"
Создаем сервисный файл
printf "[Unit] Description=Zeeka node After=network.target [Service] User=$USER ExecStart=`RUST_LOG=info which bazuka` node --listen 0.0.0.0:8765 --external $ZEEKA_IP:8765 --network debug --db ~/.bazuka-debug --bootstrap 152.228.155.120:8765 --bootstrap 95.182.120.179:8765 --bootstrap 195.2.80.120:8765 --bootstrap 195.54.41.148:8765 --bootstrap 65.108.244.233:8765 --bootstrap 195.54.41.130:8765 --bootstrap 185.213.25.229:8765 --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
Дополнительно: можно добавить цвета в вывод логов
sudo apt install ccze
Проверка логов в цвете
sudo journalctl -fn 100 -u zeekad | ccze -A
Создание кошелька Keplr
- В Google Chrome или Brave cкачиваем расширение Keplr по ссылке
- Переходим в расширение и нажимаем "Create new account"
- Вводим имя аккаунта и пароль, сохраняем мнемоник фразу в надежном месте
- Составляем из предложенных слов свою мнемоник фразу
- Готово!
Удаление ноды
Для удаления ноды выполните следующие команды
systemctl stop zeekad && systemctl disable zeekad rm -rf $HOME/bazuka /usr/bin/bazuka /etc/systemd/system/zeekad.service systemctl daemon-reload