Tezos Клієнт

Установка і Налаштування Tezos Клієнта

В даному матеріалі буде використовуватися інтерфейс командного рядка tezos-client для ітерації з мережею Tezos.

Установка

Mac OS

Використовуючи Homebrew:

$ brew tap tqtezos/homebrew-tq https://github.com/tqtezos/homebrew-tq.git
$ brew install tezos

Linux (64-bit)

Швидкий і простий спосіб запустити tezos-client на Linux - це завантажити останній бінарний tezos-client, зробити його виконуваним і помістити по потрібному вам шляху. В якості альтернативи ви можете додати репозітарний пакет для свого дистрибутива і встановити його звідти. Використання пакета - хороша ідея для виробничих систем, оскільки він автоматизує установку і дозволяє легко оновлюватись.

Варіант 1: Встановити пакет

$ wget https://github.com/serokell/tezos-packaging/releases/latest/download/tezos-client
$ chmod +x tezos-client
$ mkdir -p $HOME/.local/bin
$ mv tezos-client $HOME/.local/bin
$ echo 'export PATH="$HOME/.local/bin:$PATH"' >> $HOME/.bashrc
$ source $HOME/.bashrc

Варіант 2: Використання пакета на Ubuntu або Fedora

Отримати додаткову інформацію по установці на Linux можна тут: tezos-packaging project

Windows

Встановіть один з дистрибутивів Linux, використовуючи підсистему Windows Subsystem for Linux (WSL) і дотримуйтесь інструкцій по встановленню та налагодженню Linux.

Процес налаштування

Давайте спробуємо налаштувати tezos-client для використання вузла публічної тестової мережі Tezos. Ми робимо це, вказуючи адресу сервера з параметром -A. -S включає шифрування TLS для сервера, а -P вказує порт, в нашому випадку 443. Остання частина команди, config update, оновить конфігурацію, збережену в $ HOME/.tezos-client/config, з настройками, які ми тільки що вказали.

$ tezos-client -A rpcalpha.tzbeta.net -S -P 443 config update

[//]: # ( ЗРОБИТИ: Щоб спростити завдання, я пропоную на цій ранній стадії не використовувати нижче наступний варіант.- IAN )

В якості альтернативного способу ви можете використовувати одне з ізольованих середовищ для мережі, замість використання публічної тестової мережі. Для більш точної інформації зверніться до розділу "Пісочниця".

Спробуйте самі

Переконайтеся в тому, що ви можете запускати tezos-client, і що він налаштований на використання тестової мережі:

$ tezos-client
Warning:
This is NOT the Tezos Mainnet.
The node you are connecting to claims to be running on the
Tezos Alphanet DEVELOPMENT NETWORK.
Do NOT use your fundraiser keys on this network.
Alphanet is a testing network, with free tokens.
Usage:
tezos-client [global options] command [command options]
tezos-client --help (for global options)
tezos-client [global options] command --help (for command options)
To browse the documentation:
tezos-client [global options] man (for a list of commands)
tezos-client [global options] man -v 3 (for the full manual)
Global options (must come before the command):
-d --base-dir <path>: client data directory
-c --config-file <path>: configuration file
-t --timings: show RPC request times
--chain <hash|tag>: chain on which to apply contextual commands (possible tags are 'main' and 'test')
-b --block <hash|tag>: block on which to apply contextual commands (possible tags are 'head' and 'genesis')
-w --wait <none|<int>>: how many confirmation blocks before to consider an operation as included
-p --protocol <hash>: use commands of a specific protocol
-l --log-requests: log all requests to the node
-A --addr <IP addr|host>: IP address of the node
-P --port <number>: RPC port of the node
-S --tls: use TLS to connect to node.
-R --remote-signer <uri>: URI of the remote signer
-f --password-filename <filename>: path to the password filename
-M --mode <client|mockup>: how to interact with the node

Тепер ми перебуваємо в тестовій мережі, і наступне що потрібно зробити - це відключити попередження, щоб ми перестали бачити зайвий вивід інформації коли вводимо нові команди:

$ export TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER=yes

Створення Тестових Гаманців

З встановленим tezos-client тепер ми можемо створити пару тестових гаманців.

  • Перейдіть у вкладку Вилки(eng faucet).

  • Заповніть капчу і завантажте гаманець у вигляді файлу .json.

  • Ім'я файлу - це адреса гаманця (також відома як хеш відкритого ключа або PKH) з розширенням .json.

  • Якщо ви заглянете всередину файлу, ви побачите властивість pkh, яка містить адресу.

  • еш відкритого ключа використовується для ідентифікації облікового запису в ланцюжку блоків Tezos і може бути адресою або номером рахунку.

  • Потім ми активуємо обліковий запис, передавши йому шлях до гаманця .json, який ми тільки що завантажили.

  • Спочатку ми створимо обліковий запис для Аліси, а потім для Боба, щоб ми могли виконати деякі тестові транзакції.

  • Не лякайтеся порожнього повідомлення Error:, незабаром ми пояснимо чому так відбувається.

$ tezos-client activate account alice with ~/Downloads/tz1QLne6uZFxPRdRfJG8msx5RouENpJoRsfP.json
Node is bootstrapped, ready for injecting operations.
Operation successfully injected in the node.
Operation hash is 'oog2gMSBNWWTgHujoKViJaCed4wq27gPnLpHKQ27C5savX9ewAq'
Waiting for the operation to be included...
Error:

Зверніть увагу на повідомлення Error: в кінці виведення. tezos-client намагається дочекатися включення операції, але використовуваний нами загальнодоступний вузол Tezos забороняє доступ (в якості міри безпеки) до тієї частини api вузла, яка необхідна для цієї функції. Ми використовуємо --wait none в цих посібниках, щоб уникнути цієї помилки. Якщо ви використовуєте свій власний локальний вузол Tezos, ви можете опустити --wait none, помилки не відбудеться.

Створіть змінну для адреси облікового запису Аліси (PKH) (зверніть увагу, що адреса збігається з ім'ям вашого файлу .json):

$ ALICE_ADDRESS="tz1QLne6uZFxPRdRfJG8msx5RouENpJoRsfP"

Переконайтеся, що активація пройшла успішно:

$ tezos-client get balance for $ALICE_ADDRESS
56828.546322 ꜩ

Тепер ми створимо новий гаманець для Боба, щоб ми могли провести кілька тестових транзакцій в наступному розділі.

  • Поверніться в faucet і завантажте другий гаманець

    $ tezos-client activate account bob with tz1ZQYMDETodNBAc2XVbhZFGme8KniuPqrSw.json
    $ BOB_ADDRESS="tz1ZQYMDETodNBAc2XVbhZFGme8KniuPqrSw"
    $ tezos-client get balance for $BOB_ADDRESS

Матеріали розроблені TQ Tezos перекладені українською мовою Tezos Ukraine