Coder Social home page Coder Social logo

restake-turkce-kurulum-rehberi's Introduction

REStake Türkçe Kurulum Rehberi

REStake, delegatorlerin validatorlerine stake ödüllerini yeniden stake etmesine izin vermelerine olanak tanır. REStake validatorlerin bir komut dosyasını çalıştırarak kendilerine verilen delegeleri bulmaları ve restake işlemlerini otomatik olarak yapmalarını sağlar.

REStake, aynı zamanda kullanışlı bir stake etme aracıdır. Ödüllerinizi tek tek ya da toplu olarak telep etmenize ve yeniden stake etmenizi sağlar. Bu da işlem ücretlerinden ve zamandan tasarruf etmenizi sağlar ve daha birçok özellik de planlanmıştır.

🔴 Burada yapılacak işlemler mainnet validatorlerinin yapacağı işlemlerdir.

🔴 Kurulum işlemleri docker ve docker compose kullanılarak yapılmıştır.

Sistemi Güncelleme

apt update && sudo apt upgrade -y

Docker Kurulumu

curl -fsSL https://get.docker.com -o get-docker.sh 
sh get-docker.sh

Docker Compose Yüklenmesi

VER=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L "https://github.com/docker/compose/releases/download/"$VER"/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version

Cüzdan Oluşturma

🔴 Bu bölümde mainnet validatorünüze ait olan cüzdanın dışında fee ücretlerini ödemek için bir cüzdan oluşturuyoruz.

🔴 Oluşturmuş olduğunuz cüzdan ile Cosmos ekosisteminde yer alan tüm cüzdanlarınıza erişim yetkisi vereceksiniz. ReStake aktif eden delegatorlerinizin restake işlemlerinde kullanılacak fee ücretlerini bu cüzdanınızdan ödeyeceksiniz.

ReStake Deposunu Forklama(ÖNEMLİ)

Buradan ReStake app deposunu forkluyoruz.

ReStake Deposunu Klonlama ve .env Dosyasını Hazırlama

git clone https://github.com/eco-stake/restake
cd restake
cp .env.sample .env

🔴 restake klasörünüzde oluşturduğunuz .env dosyanıza yukarıda oluşturduğumuz cüzdana ait mnemonicleri yazıyorsunuz.

Local versiyonunuzu güncelleme

Güncellemeler her zaman oluyor ve hala düzeltilmesi gereken hatalar var. Sık sık güncelleme yaptığınızdan emin olun.

Yerel deponuzu güncelleyin ve aşağıdaki komutlarla docker konteynırlarınızı önceden oluşturun:

git pull
docker-compose run --rm app npm install
docker-compose build --no-cache

ReStake'i Çalıştırma

Not: Docker kurulumunuzda root yetkisine sahip değilseniz sudo kullanmanız gerekebilir ve bazı docker sürümleri docker-compose yerine docker compose'u kullanır. Sorunlarla karşılaşırsanız, `docker compose' kullanmayı deneyin.

docker-compose run --rm app npm run autostake

Validatorunuzu Kaydetme

REStake operatör bilgilerinizi Operatörünüzü kaydetme bölümünde gösterileceği gibi Validator Kayıt Defteri'ne kaydınızı yapana kadar 'operatör olmadığınıza dair bir uyarı görebilirsiniz.

Depoyu Forklama(ÖNEMLİ)

Buradan Validator Kayıt Defteri'i forklayın.

Forklama işlemi gerçekleştikten sonra kopyaladığınız kendi reponuzda validator adınız olacak şekilde bir klasör açıyoruz. Bu klasörün işerisine iki adet .json dosyası oluşturuyoruz.

chains.json Dosyası Oluşturma

Validatorunuze ait mainnet bilgileri ve REStake özelliklerini bu dosyaya giriyoruz. Aşağıdaki dosyayı kendinize göre düzenlemeniz, varsa ekleyeceğiniz başka mainnet validatorleri onları da aşağıdaki dosyaya uygun olarak eklemeniz gerekmektedir.

🔴 Bu dosyada name bölümüne validator adınızı, address bölümüne validator adresinizi, ``, restake bölümünün altında bulunan `address` kısımıa ise fee ücretini ödeyeceğiniz cüzdan adresinizi giriyorsunuz, `run_time` bölümüne restake işleminin hangi araşıkra yapılacağını yazıyorsunuz, `minimum_reward` bölümüne ise ne kadar ödül biriktiğinde restake edileceğini yazıyorunuz.

{
  "$schema": "../chains.schema.json",
  "name": "Anatolian Team",
  "chains": [
    {
      "name": "rebus",
      "address": "rebusvaloper.........",
      "restake": {
        "address": "rebus1..................",
        "run_time": "every 1 hour",
        "minimum_reward": 1000000000000000000
      }
    },
    {
      "name": "stride",
      "address": "stridevaloper.......",
      "restake": {
        "address": "stride1...............",
        "run_time": "every 1 hour",
        "minimum_reward": 1000000
      }
    }
  ]
}

address validator adresinizdir ve restake.address ise fee ödemeleri için oluşturduğunuz yeni sıcak cüzdanınızın adresidir.

restake.run_time UTC zaman diliminde botunuzu çalıştırmayı düşündüğünüz zamandır ve orada birkaç seçenek vardır. Belli bir saat ayarlamak için, ör. 09:00, UTC zaman diliminde 9am (sabah dokuzda) scripti çalıştırdığınızı belirtir. Birden fazla zaman için bir dizi de kullanabilirsiniz, örneğin ["09:00", "21:00"]. Saatte/günde birden çok kez için bir aralık dizesi kullanabilirsiniz, örneğin, "every 15 minutes".

restake.minimum_reward, otomatik stake'i tetiklemek için asgari ödüldür, aksi takdirde adres atlanır. Bu, daha sık yeniden düzenleme için daha yüksek ayarlanabilir. Bunun temel nominal değer olduğunu unutmayın, Örneğin, uosmo.

REStake yapmak istediğiniz tüm ağlar için bu yapılandırmayı tekrarlayın.

restake.address'in kullanıcı ara yüzünde delegator'ün restake işlemlerini gerçekleştirmek için vermiş olduğu adrese stake işleminde fee ücretinin alınacağı adres olduğunu unutmayın.

profile.json Dosyası Oluşturma

Bu dosyada name bölümüne validator adınızı ve identity bölümüne keybase.io'dan aldığınız PGP parmak izi kimliğinizi giriyorsunuz. Bu, şu anda REStake'de kullanılmıyor, ancak kaydınıza ek açıklamaya yardımcı oluyor.

{
  "$schema": "../profile.schema.json",
  "name": "Anatolian Team",
  "identity": "D06CA33098EDDACE",
  "website": "https://anatolianteam.com",
  "description": "Always forward with the Anatolian Team \ud83d\ude80",
  "contacts": {
    "email": "[email protected]",
    "twitter": "anatolianteam"
  }
}

Pull Request Gönderme

Yukarıdaki işlemleri yapıp validatorumuze ait dosya ve içerisinde iki json dosyasını hazırladıktan sonra şağıdaki resimde görüldüğü gibi Pull requests sekmesini açıyoruz. 01 02 03 PR

Bu sayfada New pull request butonuna basarak işlemimizi gerçekleştiriyoruz. Hafta içinde bu işlemi yaparsanız daha çabuk sonuç alırsınız. Merge işlemi yapıldıktan sonra resmi repoda sizin açmış olduğunuz klasör ve içerisindeki dosyalar gözükmeye başlayacaktır. 03 PR-2

Bu işlemlerden sonra restake için kalan işlemleri yapmaya devam ediyoruz.

Operator Bilgilerinizi Güncelleme

Artık operatör bilgilerinizi oto-sake'i aktif etmek istediğiniz ağları eklemek için Validator Kayıt Defteri'ni güncellemeniz gerekiyor. güncellemenizi mümkün olan en kısa sürede merge edilmek üzere pull request isteğinde bulunabilirsiniz. REStake, değişikliklerin birleştirilmesinden sonraki 15 dakika içinde otomatik olarak güncellenir.

Zamanlayıcıyı Ayarlama

Burada systemd-timer kullanımı gösterilecektir. Systemd-timer, belirtilen kurallarla bir kerelik hizmetin çalıştırılmasına izin verir. Bu yöntem tartışmasız Cron'a tercih edilir.

Sistem zamanınızın doğru olduğundan emin olun ve komut dosyasının UTC'de ne zaman çalışacağını biliyor olmalısınız, çünkü bu daha sonra gerekli olacak. Her iki örnek de saat 21:00'e göre verilmiştir.

restake.service Dosyası Oluşturma

Birim dosyası çalıştırılacak uygulamayı tanımlar. Wants ve zamanlayıcı ifadesi ile bir bağımlılık tanımlıyoruz.

tee <<EOF >/dev/null /etc/systemd/system/restake.service
[Unit]
Description=restake service with docker compose
Requires=docker.service
After=docker.service
Wants=restake.timer
[Service]
Type=oneshot
WorkingDirectory=/path/to/restake
ExecStart=/usr/bin/docker-compose run --rm app npm run autostake
[Install]
WantedBy=multi-user.target
EOF

Çözüm için benimle zamanını harcayan değerli arkadaşım Odyseus'a teşekkür ederim.

systemd timer dosyası oluşturma

Zamanlayıcı dosyası, yeniden düzenleme hizmetini her gün çalıştırma kurallarını tanımlar. Tüm kurallar systemd dokümanlarında açıklanmaktadır.

tee <<EOF >/dev/null /etc/systemd/system/restake.timer
[Unit]
Description=Restake bot timer
[Timer]
AccuracySec=1min
OnCalendar=*-*-* 21:00:00
[Install]
WantedBy=timers.target
EOF
Servisleri Etkinleştirme ve Başlatma
systemctl enable restake.service
systemctl enable restake.timer
systemctl start restake.timer
Zamanlayıcınızı kontrol etme

systemctl status restake.timer

 restake.timer - Restake bot timer
     Loaded: loaded (/etc/systemd/system/restake.timer; enabled; vendor preset: enabled)
     Active: active (waiting) since Sun 2022-03-06 22:29:48 UTC; 2 days ago
    Trigger: Wed 2022-03-09 21:00:00 UTC; 7h left
   Triggers: ● restake.service

systemctl status restake.service

● restake.service - stakebot service with docker compose
     Loaded: loaded (/etc/systemd/system/restake.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Tue 2022-03-08 21:00:22 UTC; 16h ago
TriggeredBy:  restake.timer
    Process: 86925 ExecStart=/usr/bin/docker-compose run --rm app npm run autostake (code=exited, status=0/SUCCESS)
   Main PID: 86925 (code=exited, status=0/SUCCESS)

🔴 **Not: Sorun yaşarsanız WorkingDirectory=/path/to/restake bölümünü WorkingDirectory=/root/restake olarak değiştiriniz. Eğer yine sorun yaşarsanız chmod 777 /root/restake komutu ile dosyaya okuma, yazma ve çalıştırma izni veriniz. Daha sonra systemctl daemon-reload yaptıktan sonra sistemi yeniden başlatınız. **

🔴 Eğer Failed to restake service with docker compose gibi bir hata alırsanız yine chmod 777 /usr/bin/docker-compose komutu ile dosyaya okuma, yazma ve çalıştırma izni veriniz.

İzleme

Her ağ için komut dosyası durumunu bildirmek için REStake oto-stake betiği [healthchecks.io] (https://healthchecks.io/) ile entegre olabilir. [HealthChecks.io] (https://healthchecks.io/) daha sonra, herhangi bir arızayı bildiğinizden emin olmak için e -posta, Discord ve Slack gibi birçok bildirim platformuyla entegre edilebilir.

Yapılandırıldıktan sonra, komut dosyası başladığında, başarılı ya da başarısız olduğunda REStake healthchecks.io'a ping atacaktır. Kontrol günlüğü ilgili hata bilgilerini içerecektir ve yapılandırılması basittir.

Komut dosyasını çalıştırdığınız her ağ için bir kontrol ayarlayın ve beklenen programı yapılandırın. Örneğin, her 12 saatte bir Osmosis kontrolü ekleyin, Akash için her 1 saatte bir vb.

Kontrol UUID numaranızı aşağıdaki gibi networks.local.json yapılandırma dosyanızda ilgili ağa ekleyin. İsteğe bağlı olarak HealthChecks.io platformunu kendi hostinginizde barındırmak istiyorsanız. address özniteliğini de ayarlayabilirsiniz.

{
  "osmosis": {
    "healthCheck": {
      "uuid": "77f02efd-c521-46cb-70g8-fa5v275au873"
    }
  }
}

Kullanıcı Arayüzünü (UI) Çalıştırma

Docker'ı kullanarak kullanıcı arayüzünü bir satırla çalıştırın:

docker run -p 80:80 -t ghcr.io/eco-stake/restake

docker-compose up kullanarak kaynaktan alternatif çalıştırma da yapabilirsiniz.

restake-turkce-kurulum-rehberi's People

Contributors

koltigin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.