(Bu kurulum bir user üzerinde yapılabilir. Başlamak için önce user oluşturun.)
- Paketleri güncelleyin
sudo apt update
- Peer listesini indirin
wget -O ~/peers.txt https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt
- .mina-config isimli bir dizin oluşturun
mkdir $HOME/.mina-config
- Private ve public key dosyalarını oluşturmak için keys isimli bir dizin oluşturun ve içine girin
mkdir keys
cd keys
- nano metin düzenleyici programını indirin
sudo apt-get install nano
- my-wallet isimli bir dosya oluşturun
sudo nano my-wallet
- {"box_primitive": ile başlayan özel anahtarı bu dosyanın içine yapıştırdıktan sonra CTRL+O ve Enter ile belgeyi kaydedin ve CTRL+X ile kapatın
- my-wallet.pub isimli bir dosya oluşturun
sudo nano my-wallet.pub
- public keyi bu dosyanın içine yapıştırdıktan sonra CTRL+O ve Enter ile belgeyi kaydedin ve CTRL+X ile kapatın
- Kök dizine dönün
cd ~
- keys dizini ve my-wallet dosyasını yetkilendirin
sudo chmod 700 ~/keys
sudo chmod 600 ~/keys/my-wallet
sudo chown -R <USER-NAME>:<USER-NAME> ~/keys
sudo chown -R <USER-NAME>:<USER-NAME> ~/keys/my-wallet
- Docker kurun ve yetkilendirin
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
sudo chmod 666 /var/run/docker.sock
- Yapmak istediğiniz işleme göre bunlardan birini seçin (Block Producer ya da Snark Worker)
a-) Block Producer docker image için (tüm satırları tek seferde yapıştırın)b-) Snark Worker docker image için (tüm satırları tek seferde yapıştırın)docker run --name mina -d \ -p 8302:8302 \ --restart=always \ --mount "type=bind,source=`pwd`/keys,dst=/keys,readonly" \ --mount "type=bind,source=`pwd`/.mina-config,dst=/root/.mina-config" \ -e CODA_PRIVKEY_PASS="<PRIVKEY_PASS>" \ minaprotocol/mina-daemon:1.3.1.2-25388a0-bionic-mainnet \ daemon \ --block-producer-key /keys/my-wallet \ --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt
docker run --name mina -d \ -p 8302:8302 \ --restart=always \ --mount "type=bind,source=`pwd`/keys,dst=/keys,readonly" \ --mount "type=bind,source=`pwd`/.mina-config,dst=/root/.mina-config" \ -e CODA_PRIVKEY_PASS="<PRIVKEY_PASS>" \ minaprotocol/mina-daemon:1.3.1.2-25388a0-bionic-mainnet \ daemon \ --run-snark-worker "<PUBLIC_KEY>" \ --snark-worker-fee "0.1" \ --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt \ --work-selection seq
- Oluşturulan mina container içine girin
docker exec -it mina bash
- Networke bağlanma durumunuzu kontrol edin (sıradaki maddeden devam etmek için catchup ya da sync durumuna gelmesini bekleyin)
mina client status
- nano metin düzenleyici programını bu container içine de indirin
apt-get install nano
- Private ve public key dosyalarını bu container içinde de oluşturmak için keys isimli bir dizin oluşturun ve içine girin
mkdir keys
cd keys
- my-wallet isimli bir dosya oluşturun
nano my-wallet
- {"box_primitive": ile başlayan özel anahtarı bu dosyanın içine yapıştırdıktan sonra CTRL+O ve Enter ile belgeyi kaydedin ve CTRL+X ile kapatın
- my-wallet.pub isimli bir dosya oluşturun
nano my-wallet.pub
- public keyi bu dosyanın içine yapıştırdıktan sonra CTRL+O ve Enter ile belgeyi kaydedin ve CTRL+X ile kapatın
- Kök dizine dönün
cd ~
- keys dizini ve my-wallet dosyasını yetkilendirin
chmod 700 ~/keys
chmod 600 ~/keys/my-wallet
chown -R <USER-NAME>:<USER-NAME> ~/keys
chown -R <USER-NAME>:<USER-NAME> ~/keys/my-wallet
- Oluşturulan anahtar çiftini coda accounts içine import edin
mina accounts import -privkey-path ~/keys/my-wallet
- Sık kullanılan bilgileri değişkenlere atayacağınız .mina-env dosyasını oluşturun
nano .mina-env
- public key değişkenini oluşturduktan sonra CTRL+O ve Enter ile belgeyi kaydedin ve CTRL+X ile kapatın
MINA_PUBLIC_KEY=<PUBLIC_KEY>
- Bu değişkenleri kullanabilmek için .mina-env dosyasını kaynak olarak belirleyin
source .mina-env
- Import edilen hesap üzerinde işlem yapabilmek için hesabın kilidini açın
mina accounts unlock -public-key $MINA_PUBLIC_KEY
- Hesabınızın bakiyesini kontrol edin
mina accounts list
(Burada receiver alanındaki adres 1. görev için gereken echo service'e ait adres. Farklı gönderimlerde alıcı adresini buraya yazın.)
mina client send-payment \
-amount 1 \
-receiver B62qndJi5mnRoBZ8SAYDM1oR2SgAk5WpZC8hGpJUZ4e64kDHGbFMeLJ \
-fee 0.1 \
-sender $MINA_PUBLIC_KEY
mina client set-staking -public-key $MINA_PUBLIC_KEY
mina client set-snark-work-fee 0.1
mina client set-snark-worker -address $MINA_PUBLIC_KEY
- Çalışan nodu durdurun
docker exec -it mina mina client stop-daemon
- Mina containeri durdurun
docker stop mina
- Mina containeri silin
docker container rm mina
- Docker imageleri listeleyin
docker images
- IMAGE ID ile Mina image silin
docker rmi <IMAGE-ID>
- .coda-config dosyasını silin
sudo rm -rf .mina-config
- peers.txt dosyasını silin
sudo rm -R peers.txt
- "Mina ağına bağlanma" başlığındaki;
2 ve 3. adımları uygulayın,
4-12 arasını atlayın,
13. işlemden itibaren yeni versiyon ile uygulamaya devam edin.
- Keypair oluşturma paketini indirin
sudo apt-get install mina-generate-keypair
- Keypair oluşturun
mkdir ~/keys
chmod 700 ~/keys
mina-generate-keypair -privkey-path ~/keys/my-wallet
chmod 600 ~/keys/my-wallet
systemctl --user stop mina
sudo rm -R .mina-config
sudo rm -R peers.txt
sudo apt-get remove -y mina-testnet-postake-medium-curves
sudo rm /etc/apt/sources.list.d/mina*.list
echo "deb [trusted=yes] http://packages.o1test.net $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/mina.list
sudo apt-get update
sudo apt-get install -y mina-mainnet=1.3.1.2-25388a0
wget -O ~/peers.txt https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt
mina daemon --generate-genesis-proof true --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt
after bootstrap Ctrl-C
sudo nano .mina-env
EXTRA_FLAGS=" --block-producer-key /home/<USER-NAME>/keys/my-wallet \
--uptime-submitter-key /home/<USER-NAME>/keys/my-wallet \
--uptime-url http://34.134.227.208/v1/submit \
--coinbase-receiver <PUBLIC-KEY-PATH> \ (rewardların toplanacağı adres)
--limited-graphql-port 3095 \ (sidecar çalıştırıyorsanız gerekli)
(bp ile birlikte snark da çalışacak ise aşağıdaki 3 parametre eklenmeli)
--run-snark-worker <PUBLIC-KEY> \ (snark ödüllerinin toplanacağı adres)
--snark-worker-fee 0.0009 \ (snark fee)
--work-selection seq" (snark aktif)
UPTIME_PRIVKEY_PASS="<PRIVATE-KEY-PASSWORD>"
MINA_PRIVKEY_PASS="<PRIVATE-KEY-PASSWORD>"
CODA_PRIVKEY_PASS="<PRIVATE-KEY-PASSWORD>"
LOG_LEVEL=Info
FILE_LOG_LEVEL=Debug
source .mina-env
systemctl --user enable mina
systemctl --user start mina
systemctl --user restart mina
systemctl --user status mina
journalctl --user-unit mina -f
mina client status
systemctl --user stop mina
sudo apt-get remove -y mina-testnet-postake-medium-curves
sudo rm /etc/apt/sources.list.d/mina*.list
echo "deb [trusted=yes] http://packages.o1test.net $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/mina.list
sudo apt-get update
sudo apt-get install -y mina-mainnet=1.3.1.2-25388a0
source .mina-env
systemctl --user daemon-reload
systemctl --user restart mina
systemctl --user status mina
journalctl --user-unit mina -f
mina client status
systemctl --user restart mina