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

Last updated