Kurulum
Updating the System
apt update && apt upgrade -y
Gerekli Kütüphanelerin Kurulması
apt install make clang pkg-config libssl-dev libclang-dev build-essential git curl ntp jq llvm tmux htop screen gcc lz4 -y < "/dev/null"
Go Kurulumu
ver="1.21.5"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
rm -rf /usr/local/go
tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm -rf "go$ver.linux-amd64.tar.gz"
echo 'export GOROOT=/usr/local/go' >> $HOME/.bash_profile
echo 'export GOPATH=$HOME/go' >> $HOME/.bash_profile
echo 'export GO111MODULE=on' >> $HOME/.bash_profile
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile
source $HOME/.bash_profile
go version
Değişkenleri Yükleme
Aşağıda değiştirmeniz gereken yerler belirtilmiştir.
$ACRE_NODENAME
validator adınız$ACRE_WALLET
cüzdan adınız- Eğer portu başka bir node kullanıyorsa aşağıdan değiştirebilirsiniz.
11
yazan yere farklı bir değer girmelisiniz yine iki haneli olacak şekilde.
echo "export ACRE_NODENAME=$ACRE_NODENAME" >> $HOME/.bash_profile
echo "export ACRE_WALLET=$ACRE_WALLET" >> $HOME/.bash_profile
echo "export ACRE_PORT=11" >> $HOME/.bash_profile
echo "export ACRE_CHAIN_ID=acre_9052-1" >> $HOME/.bash_profile
source $HOME/.bash_profile
Örnek
Node (ACRE_NODENAME
) ve Cüzdan (ACRE_WALLET
) adımızın Anatolian-Guide
olduğunu ve kullanacağınız portun (ACRE_PORT
) da 16656
olacağını varsayalım. Kod aşağıdaki şekilde düzenlenecektir.
echo "export ACRE_NODENAME=Anatolian-Guide" >> $HOME/.bash_profile
echo "export ACRE_WALLET=Anatolian-Guide" >> $HOME/.bash_profile
echo "export ACRE_PORT=16" >> $HOME/.bash_profile
echo "export ACRE_CHAIN_ID=acre_9052-1" >> $HOME/.bash_profile
source $HOME/.bash_profile
Arable'ın Kurulması
git clone https://github.com/ArableProtocol/acrechain.git
cd acrechain
git checkout v1.2.0
make install
cd
acred version
The version output will be v1.2.0
.
Uygulamayı Yapılandırma ve Başlatma
Aşağıdaki kodlarda herhangi bir değişilik yapmadan kopyalayıp yapıştırıyoruz.
acred config keyring-backend test
acred config chain-id $ACRE_CHAIN_ID
acred init --chain-id $ACRE_CHAIN_ID $ACRE_NODENAME
# Copying the Genesis File
wget https://raw.githubusercontent.com/ArableProtocol/acrechain/main/networks/mainnet/acre_9052-1/genesis.json -O $HOME/.acred/config/genesis.json
# Minimum GAS Ücretinin Ayarlanması
sed -i 's|^minimum-gas-prices *=.*|minimum-gas-prices = "0.25aacre"|g' $HOME/.acred/config/app.toml
# Closing Indexer-Optional
indexer="null"
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.acred/config/config.toml
# Set up SEED and PEERS
SEEDS=""
sed -i 's|^seeds *=.*|seeds = "'$SEEDS'"|; s|^persistent_peers *=.*|persistent_peers = "'$PEERS'"|' $HOME/.acred/config/config.toml
# Enabling Prometheus
sed -i 's|^prometheus *=.*|prometheus = true|' $HOME/.acred/config/config.toml
# Set up Pruning
pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="50"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.acred/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.acred/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.acred/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.acred/config/app.toml
# Set up Ports
sed -i.bak -e "
s%:26658%:${ACRE_PORT}658%g;
s%:26657%:${ACRE_PORT}657%g;
s%:6060%:${ACRE_PORT}060%g;
s%:26656%:${ACRE_PORT}656%g;
s%:26660%:${ACRE_PORT}660%g
" $HOME/.acred/config/config.toml
sed -i.bak -e "
s%:8545%:${ACRE_PORT}545%g;
s%:8546%:${ACRE_PORT}546%g;
s%:6065%:${ACRE_PORT}065%g;
s%:1317%:${ACRE_PORT}317%g;
s%:8080%:${ACRE_PORT}080%g;
s%:9090%:${ACRE_PORT}090%g;
s%:9091%:${ACRE_PORT}091%g
" $HOME/.empowerchain/config/app.toml
sed -i.bak -e "s%:26657%:${ACRE_PORT}657%g" $HOME/.acred/config/client.toml
# Adding External Address
PUB_IP=`curl -s -4 icanhazip.com`
sed -e "s|external_address = \".*\"|external_address = \"$PUB_IP:${ACRE_PORT}656\"|g" ~/.acred/config/config.toml > ~/.acred/config/config.toml.tmp
mv ~/.acred/config/config.toml.tmp ~/.acred/config/config.toml
# Creating the Service File
tee /etc/systemd/system/acred.service > /dev/null << EOF
[Unit]
Description=Acred Node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which acred) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Hizmeti Etkinleştirme ve Başlatma
systemctl daemon-reload
systemctl enable acred
Logları Kontrol Etme
journalctl -u acred -f -o cat
uyarı
AFTER THIS STAGE, WE EXPECT OUR NODE TO SYNC.
Senkronizasyonu Kontrol Etme
false
çıktısı almadıkça bir sonraki yani validator oluşturma adımına geçmiyoruz.
acred status 2>&1 | jq .SyncInfo
Cüzdan
Yeni Cüzdan Oluşturma
$ACRE_WALLET
bölümünü değiştirmiyoruz kurulumun başında cüzdanımıza değişkenler ile isim belirledik.
acred keys add $ACRE_WALLET
Importing an Existing Wallet
acred keys add $ACRE_WALLET --recover