sudo apt-get update
sudo apt install build-essential
sudo apt install --assume-yes git clang curl libssl-dev protobuf-compiler
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
rustup default stable
rustup update
rustup update nightly
rustup target add wasm32-unknown-unknown --toolchain nightly
git clone https://github.com/availproject/avail.git
cd avail
mkdir -p output
mkdir -p data
git checkout v1.8.0.3
cargo run --locked --release -- --chain goldberg --validator -d ./output
** Press Ctrl + C to exit the screen **
sudo touch /etc/systemd/system/availd.service
sudo nano /etc/systemd/system/availd.service
[Unit]
Description=Avail Validator
After=network.target
StartLimitIntervalSec=0
[Service]
User=root
ExecStart= /root/avail/target/release/data-avail -d ./output --chain goldberg --validator --name "Flytomoon-avail"
Restart=always
RestartSec=120
[Install]
WantedBy=multi-user.target
** Change this name "Flytomoon-avail" to your own ** Save it: CTRL+X -> Yes
systemctl enable availd.service
systemctl start availd.service
systemctl status availd.service
journalctl -f -u availd
Check your node on https://telemetry.avail.tools
After the node has synchronized, we pull out the key from our node by entering the command
curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9933
If you get a similar result, then everything is great {"jsonrpc":"2.0","result":"0xa0very0long0hex0string","id":1} - copy the key (in bold) we will need it in the near future