Требования к серверу- 2 Core
- 8 GB RAM
- Disk 50 GB
Установка
Подготовка сервера (копируем все вместе, вводим одной командой):
Код:
apt-get update \
&& DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get install -y --no-install-recommends \
tzdata \
git \
ca-certificates \
curl \
build-essential \
libssl-dev \
pkg-config \
libclang-dev \
cmake
Устанавливаем cargo
#отвечаем y
Устанавливает rust версии 1.62
[CODE]curl https://sh.rustup.rs -sSf | sh
#отвечаем y, выбираем пункт 1
source "$HOME/.cargo/env"/[CODE]
Далее нам необходимо создать форк на Git Hub (нужно быть уже зарегистрированным пользователем).
Идем на
этот сайт и нажимаем кнопку "fork" и в следующем окне подтверждаем копирование.
Возвращаемся в терминал
Код:
git clone https://github.com/<YOUR-GITHUB-USERNAME>/sui.git
#<YOUR-GITHUB-USERNAME> - заменить на Ваше имя пользователя на GitHub
cd sui
git remote add upstream https://github.com/MystenLabs/sui
cp crates/sui-config/data/fullnode-template.yaml fullnode.yaml
rm -rf /root/sui/suidb/
wget -O /root/sui/genesis.blob https://github.com/MystenLabs/sui-genesis/raw/main/devnet/genesis.blob
git fetch upstream
git stash
git checkout -B devnet --track upstream/devnet
cargo run --release --bin sui-node -- --config-path /root/sui/fullnode.yaml
Закрыть терминал и запустить сервер заново
Код:
cd sui
cargo build --release
mv ~/sui/target/release/sui /usr/local/bin/
vi /root/sui/fullnode.yaml
#меняем адреса и путь к файлу genesis.blob на такие, как ниже на скрине
#ВАЖНО! На скрине не отображено, но необходимо поменять еще и вторую строку:
#Вместо "suidb" написать "$HOME/sui/suidb"
Открываем порты:
Код:
sudo ufw allow 9000
sudo ufw allow 9184
sudo ufw enable
Создаем сервисный файл:
Код:
sudo tee /etc/systemd/system/suid.service > /dev/null <<EOF
Далее копируем одной командой:
Код:
[Unit]
Description=Sui Node
After=network.target
[Service]
User=$USER
Type=simple
ExecStart=/root/sui/target/release/sui-node --config-path /root/sui/fullnode.yaml
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Запускаем сервисный файл:
Код:
sudo systemctl daemon-reload
sudo systemctl enable suid
sudo systemctl restart suid
sudo systemctl status suid
Нода установлена!
Как проверить работает ли нода?
Идем на
этот сайт и вводим айпи своего сервера, нажимаем "connect", работающая нода выглядит так:
Для регистрации в тестнете необходимо заполнить форму !
Как удалить базу данных
Останавливаем сервис:
Код:
sudo systemctl stop suid
sudo systemctl disable suid
Удаляем старую базу данных:
Код:
sudo rm -rf $HOME/sui/suidb
Запускаем сервис:
Код:
sudo systemctl daemon-reload
sudo systemctl enable suid
sudo systemctl restart suid
sudo systemctl status suid
Дополнительные команды
Проверить версию ноды:
Проверка логов:
Код:
journalctl -u suid -f -o cat