Skip to content

Latest commit

History

61 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Airchains

UYARI : Her hangi bir hatada puanlarınızın kaybolmaması için kurulum aşamalarında verilen keyleri ve priv keyleri saklayın.

Standart güncelleme ve gereksinimleri kuruyoruz.

Donanım

Minimum: 2 vCPU 4 RAM
Önerilen: 4vCPU 8 RAM

Kurulum

# güncellemeapt update && apt upgrade -ysudo apt install -y curl git jq lz4 build-essential cmake perl automake autoconf libtool wget libssl-dev
# Go kurulumusudo rm -rf /usr/local/gocurl -L https://go.dev/dl/go1.22.3.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/localecho 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profilesource .bash_profile
# Gerekli repoları çekiyoruzgit clone https://github.com/airchains-network/evm-station.gitgit clone https://github.com/airchains-network/tracks.git
# evmos ağımızın kurulumuna başlıyoruz, bu localde çalışan kendi ağımız.cd evm-stationgo mod tidy
# Bu komutla kurulumu tamamlıyoruz./bin/bash ./scripts/local-setup.sh

Sistem dosyasının sağlıklı çalışabilmesi için bir env oluşturuyoruz.

nano ~/.rollup-env

İçerisine gerekli değişkenleri giriyoruz ardından ctrl+x, y ve enter tuşlarına basarak çıkıyoruz.

# buradaki kod bloğunda değiştirmeniz bir yer yok.MONIKER="localtestnet"KEYRING="test"KEYALGO="eth_secp256k1"LOGLEVEL="info"HOMEDIR="$HOME/.evmosd"TRACE=""BASEFEE=1000000000CONFIG=$HOMEDIR/config/config.tomlAPP_TOML=$HOMEDIR/config/app.tomlGENESIS=$HOMEDIR/config/genesis.jsonTMP_GENESIS=$HOMEDIR/config/tmp_genesis.json VAL_KEY="mykey"

Servis dosyasını yazıyoruz. User kullanıyorsanız root kısmını ona göre değiştirin.

# tek komut tüm bloğu copy paste yapabilirsiniz yavrularımsudo tee /etc/systemd/system/rolld.service > /dev/null << EOF[Unit]Description=ZKAfter=network.target[Service]User=rootEnvironmentFile=/root/.rollup-envExecStart=/root/evm-station/build/station-evm start --metrics "" --log_level info --json-rpc.api eth,txpool,personal,net,debug,web3 --chain-id "stationevm_1234-1"Restart=alwaysRestartSec=3[Install]WantedBy=multi-user.targetEOF

Servisleri güncelleyip başlatıyoruz.

sudo systemctl daemon-reload
sudo systemctl enable rolld
sudo systemctl start rolld
sudo journalctl -u rolld -f --no-hostname -o cat

Logların aktığını görmelisiniz, ardından ctrl+c ile logları durduruyoruz.

image

Sonraki aşamalarda rpc lazım olacak, onun ayarını yapalım. Önce çalışan nodu durduralım

systemctl stop rolld

Sonra app.toml dosyasına gidelim. En altta RPC kısmı şu şekilde olacak.

nano ~/.evmosd/config/app.toml

image

Ayarı yaptıktan sonra ctrl+x, y ve enter ile kaydedip çıkalım ve nodu tekrar başlatalım.

systemctl restart rolld

Böylece cosmos rpclerini public yapmayı öğrendiniz.

Bu komut bize private key verecek, saklıyoruz.

/bin/bash ./scripts/local-keys.sh

DA layer olarak eigenlayer kullanacağız. Bunun için key gerekiyor, binary indirip çalışması için izin veriyoruz. Resmi dökümanda celestia, avail kurulumları da var onlara da bakabilirsiniz. Mock, yani sahte DA da kullanabilirsiniz (mock ile bir süre puan kazanılmasına izin vereceklermiş) Şu an testnette sonradan DA değiştirilmiyor, güncellemeyle bunu mümkün kılacaklarını söylediler.

Benim EigenDA seçme nedenim en kolay Celestia ve Eigen olması (token de bulması kolay), Celestia ezbere biliyoruz - bu sefer Eigen olsun.

cd $HOMEwget https://github.com/airchains-network/tracks/releases/download/v0.0.2/eigenlayermkdir -p $HOME/go/binchmod +x $HOME/eigenlayermv $HOME/eigenlayer $HOME/go/bin
# `CUZDANADI` değiştirin ve çıktıda size verilen ECDSA Private Keyi saklayın. 
# Ctrl+c ile kapatın enterlayın ve verilen diğer `public hex` kenara not edin lazım olacak.
# Verilen 0x evm adresine her ihtimale karşı 0.5 eth atın holesky ağında.eigenlayer operator keys create --key-type ecdsa CUZDANADI

Şimdi track ve station kısmına geçiyoruz.

cd $HOMEcd tracksgo mod tidy

tracks klasörü içindeyken aşağıdaki kodu başlatıyoruz. PUBLICHEX biraz önce aldığımız public key olacak.

MONIKER (validatör ismi) değiştirebilirsiniz kafanıza göre.

go run cmd/main.go init --daRpc "disperser-holesky.eigenda.xyz" --daKey "PUBLICHEX" --daType "eigen" --moniker "MONIKER" --stationRpc "http://127.0.0.1:8545" --stationAPI "http://127.0.0.1:8545" --stationType "evm"

Çıktı şu şekilde olacak

tg_image_2547108070

Şimdi tracker adresi oluşturuyoruz. TRACKERCUZDAN değiştirin.

Çıktıyı yedek alın, air prefixli cüzdanla discorddaswitchyard faucet kanalından token alın.

go run cmd/main.go keys junction --accountName TRACKERCUZDAN --accountPath $HOME/.tracks/junction-accounts/keys

Sonra proveri çalıştırıyoruz.

go run cmd/main.go prover v1EVM

Şimdi bize node id lazım, bunu da şurdan alıyoruz.

# ctrl w ile node id aratabilirsiniz, en aşağı gidip biraz yukarıdanano ~/.tracks/config/sequencer.toml

image

Aşağıdaki kodda

TRACKERCUZDAN yukarda yazdığınız adı

TRACKERCUZDAN-ADRESI buna da air cüzdanı

IP ip adresiniz

NODEID sequencer.toml dan temin ettiğimiz node id olacak

go run cmd/main.go create-station --accountName TRACKERCUZDAN --accountPath $HOME/.tracks/junction-accounts/keys --jsonRPC "https://junction-testnet-rpc.synergynodes.com/" --info "EVM Track" --tracks TRACKERCUZDAN-ADRESI --bootstrapNode "/ip4/IP/tcp/2300/p2p/NODEID"

Stationu kurduk, şimdi bunu servisle çalıştıralım.

Servis çalıştırmak istemeyenler screen açıp tracks klasöründe go run cmd/main.go start komutunu çalıştırabilirler.

sudo tee /etc/systemd/system/stationd.service > /dev/null << EOF[Unit]Description=station track serviceAfter=network-online.target[Service]User=rootWorkingDirectory=/root/tracks/ExecStart=/usr/local/go/bin/go run cmd/main.go startRestart=alwaysRestartSec=3LimitNOFILE=65535[Install]WantedBy=multi-user.targetEOF
screen -S airsudo systemctl daemon-reloadsudo systemctl enable stationdsudo systemctl restart stationdsudo journalctl -u stationd -f --no-hostname -o cat

Kurulum tamam ama?

Kurulum işlemleri bu kadar. Ama şu an puan kazanmıyorsunuz. Tracker cüzdanınızın mnemoniclerini leap wallet import edip https://points.airchains.io/ connect diyoruz Dashboardda stationu ve puanınızı görebilirsiniz. Henüz tx yapmadığımız için 100 point pending görünecek. Bunun sebebi şu, puan kazanmanız için pod çıkarmanız lazım. Pod 25txten oluşan bir paket gibi düşünebilirsiniz. Her 25tx 1 pod çıkaracak ve bu işlemlerden 5 puan kazanacaksınız. İlk kurulumdaki 100 puan, ilk poddan sonra aktif olacak.

Bunun için de şunu yapıyoruz İlk başta bin/bash ./scripts/local-keys.sh komutuyla bir priv key aldık ve rpc ayarı yapmıştık. Metamaska bu priv keyi import ediyoruz, ağ ekle kısmında da şu bilgileri girin.

rpc http://IP:8545
id 1234
ticker tEVMOS

image

girip okeyliyoruz.

Ayrıca rpc'ye bağlanabilmek için 8545 numaralı portu açıyoruz o da şu komutla

sudo ufw allow 8545

Buradan artık kontrat mı deploy edersiniz, manuel tx mi kasarsınız size kalmış.

Track işleminde rpc hatası alanlar rollback yapmayı denesinler. Bazen 1 bazen 3 rollback işlemiyle sorun çözülüyor. Kaç kez rollback yapmak istiyorsanız go run cmd/main.go rollback komutunu o kadar çalıştırın, her seferinde çıktıyı bekleyin.

systemctl stop stationd
cd tracks
go run cmd/main.go rollback
sudo systemctl restart stationd
sudo journalctl -u stationd -f --no-hostname -o cat

Hadi sağlıcakla.

Ekran Resmi 2024-06-07 14 18 52

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages