Сервис Catapult / NEMCatapult Эпизод 4


 

Сервис Catapult / NEMCatapult Эпизод 4

Сервис Catapult/ NEMCatapult Эпизод 4

 Загрузочный сервис Catapult

 

 

Сервис Catapult / NEMCatapult Эпизод 4

https://github.com/tech-bureau/catapult-service-bootstrap.git

 

Сделка репо (сделка купли (продажи) ценных бумаг), которая включает  в себя ряд функций, помогающих разработчикам быстро перейти к работе с сервисом Catapult. Цель состоит в том, чтобы сделать его максимально простым, чтобы разработчики могли быстро запустить сервер, а вы могли сосредоточиться на своей работе, а не заниматься установкой и настройкой сервера.

ПРИМЕЧАНИЕ: система загрузки предназначена для обучения, она не должна приводить в действие работу сервиса Catapult.

Мы используем образы docker в качестве механизма автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы.

Это программное обеспечение подготавливает файлы на диске, а затем используют docker-compose для определения и управления несколькими мульти-контейнерами приложений Docker, чтобы сервер мог функционировать правильно.

 

Зависимость от окружающей среды

Единственная зависимость возникает в git (гит)- распределённая система управления версиями, позволяющая хранить данные из docker/docker-compose. Если у вас нет установленных docker, вы можете получить информацию об установке с веб-сайта сообщества docker:

https://docs.docker.com/install/#server

https://docs.docker.com/compose/install/#install-compose

 

Инструкции по установке и запуску

 

  1. git clone git@github.com:tech-bureau/catapult-service-bootstrap.git
  2. cd catapult-service-bootstrap
  3. docker-compose up

 

Если вы правильно выполнили инструкции по установке docker или уже установили docker / docker-compose, вы должны увидеть, как docker загружает образы  изображений, а затем запускает программу начальной настройки.

Если вы сделали все верно, то должен запуститься сервер Catapult, и на экране появятся регистрационные журналы:

 

api-node-0_1              | 2018-05-18 18:52:11.888098 0x00007f24efa20700: <debug> (src::NetworkHeightService.cpp@45) network chain height increased from 120 to 121
peer-node-1_1             | 2018-05-18 18:52:12.068932 0x00007fe59221c700: <debug> (src::NetworkHeightService.cpp@45) network chain height increased from 120 to 121
peer-node-0_1             | 2018-05-18 18:52:12.477647 0x00007f35d4de4700: <debug> (src::NetworkHeightService.cpp@45) network chain height increased from 120 to 121 Вы можете проверить, что все работает, выполняя быстрый запрос  для получения информации о блоке:

curl localhost:3000/block/1

Чтобы остановить работу сервера, просто нажмите  Ctrl+c

 

Настройка ключей

Bootstrap (свободный набор инструментов для создания сайтов и веб-приложений) заботится о первоначальной генерации ключей и конфигурации. После запуска в первый раз у вас будет набор открытых/приватных ключей, сохраненных в нескольких файлах. Вы можете получить информацию о ключах, которые используются в вашей тестовой настройке, перейдя в следующий справочник:

ubuntu@catapult:~/catapult$ cd  build/generated-addresses/
ubuntu@catapult:~/catapult/build/generated-addresses$ ls
addresses.yaml  raw-addresses.txt  README.md

Файл raw-addresses.txt -это набор адресов, которые были сгенерированы заново в рамках запуска docker-compose с помощью утилиты Catapult address utility.

 

Файлы addresses.yaml являются ключами для файла raw-addresses.txt, но форматируются в форме yaml. Этот файл yaml используется как вход для файлов конфигурации Catapult, сгенерированных во время первоначального запуска.

ПРИМЕЧАНИЕ. Ключи yaml «nemesis_addresses», установлены в качестве пробных xem-средств для осуществления оплат.

 

Запуск тестирования блоков

У нас есть тестовый блок-проводник, который мы включили в качестве дополнительной услуги. Если вы хотите, чтобы блок-проводник работал с вашим сервисом Catapult, просто запустите:

docker-compose -f docker-compose-with-explorer.yml up

Это запустит сервис,  порт 8000, который вы можете использовать в своем браузере, чтобы просмотреть детали прогресса.

 

Запуск в фоновом режиме

 

Благодаря первым настройкам вы установили и запустили свой сервис Catapult. Для того чтобы он работал в фоновом режиме, вы можете перейти в каталог catapult-server-bootstrap и выполнить команду: docker-compose up -d

Для более подробного изучения использования команды docker-compose up вы можете пройти по ссылке:

https://docs.docker.com/compose/reference/up/

 

Подробная информация об установке

 

Вы можете запустить / приостановить работу сервиса Catapult по мере необходимости. Каждый раз, когда вы начинаете его резервное копирование, он будет продолжать работать с того места, где становился.

Если ваш сервис находится в плохом состоянии или вы просто хотите перезапустить его, это можно сделать с помощью функции начальной загрузки. Чтобы сбросить все данные до нуля необходимо:

  1. Остановите работу Catapult, если она работает (используйте комбинацию клавиш Ctrl + C, если она находится в активном режиме, или запустите docker-compose down, если вы работаете в фоновом режиме).
  2. Запустите один из предоставленных вариантов очистки:

— Запуск  ./clean-data сохранит конфигурацию и сгенерированные ключи, но удалит все данные блокчейна и кэша. При перезапуске Catapult запустится заново.

— Запуск  ./clean-all очистит данные и дополнительно удалит сгенерированные ключи и конфигурацию, сгенерированную из этих ключей. После запуска этого сценария новые ключи, найденные в каталоге build/generated-addresses/, должны будут использоваться в любом приложении, в котором вы работаете.

Основные неполадки

Кэш Catapult и механизм запросов питаются от mongodb (это документо-ориентированная СУБД).

В некоторых docker  есть проблемы с новейшим механизмом хранения. Мы предоставили резервную копию файла docker compose для использования, в случае если вы столкнетесь при запуске с ошибками wiredtiger .

Вы можете использовать файл резервной копии, выполнив:

docker-compose up -f docker-compose-mmapv1.yml

 

https://github.com/tech-bureau/catapult-service-bootstrap#keys-setup

 


Этот документ содержит процедуры, помогающие разработчикам понять, как создать пространство имен, как создать мозаику и как передать XEM и Mosaics в Catapult блокчейн.

Мы используем Linux / Slackware 14.2 в качестве нашей системы для  распространения.

ПРИМЕЧАНИЕ: Представленная конфигурация не предназначена для использования в общедоступной сети. Эти параметры используются для версии Catapult Testnet (MIJIN-TEST).

Разработки:

Операционная система: Slackware 14.2 (64 бит) ( Linux )

Процессор: 2 x 3 ГГц

Память: 2048 МБ

Жесткий диск: 80 ГБ

Пропускная способность интернета: 10 Мбит / с

Библиотека:

Node Version Manager: https://github.com/creationix/nvm

 

Catapult NEM2-CLI:

Интерфейс командной строки NEM2 (NEM2-CLI) является унифицированным инструментом для взаимодействия с блокчейн NEM Catapult.

Этот инструмент позволяет выполнять в блокчейне наиболее часто используемые действия, такие как:

— Создание учетных записей, пространства имен, мозаики, проверка транзакций, передача XEM или любой мозаики, созданной в Catapult и  т. д.

— NEM2-CLI — это инструмент с открытым исходным кодом, созданный на основе NEM2-SDK.

 

1.- Установка NEM2-CLI

Сервис Catapult / NEMCatapult Эпизод 4

 

2. Создать профиль пользователя (пользователь-01), счет со средствами.

 

Сервис Catapult / NEMCatapult Эпизод 4

 

Примечание: эта учетная запись содержит XEM, созданные в эпизоде 2.

 

privatekey: устанавливает PrivateKey (приватный ключ) одного из адресов, созданных в эпизоде 2, и используется для генерации блока Nemesis.

network: рабочая сеть.

url: адрес URL-адреса сервера Api-rest Catapult.

profile: имя профиля для пользователя-01 из NEM2-CLI.

Сервис Catapult / NEMCatapult Эпизод 4

Все профили пользователей хранятся в ~ / .nem2rc.json.

3. — Создать нового пользователя (пользователь-02), учетную запись без средств.

Сервис Catapult / NEMCatapult Эпизод 4

Информация об исходной учетной записи пользователя.

Сервис Catapult / NEMCatapult Эпизод 4

 

Информация об учетной записи пользователя.

 

Сервис Catapult / NEMCatapult Эпизод 4

 

Примечание: Должно появиться такое сообщение, поскольку в блокчейн цепочке информации по этому аккаунту пока нет.

 

4. — Передача 100 XEM от пользователя-01 к пользователю-02.

 

Сервис Catapult / NEMCatapult Эпизод 4

 

Проверить Хэш транзакции.

 

Сервис Catapult / NEMCatapult Эпизод 4

 

Проверить информацию учетной записи пользователя 02.

Сервис Catapult / NEMCatapult Эпизод 4

 

5.- Создать Namespace (пространство имен).

 

Сервис Catapult / NEMCatapult Эпизод 4

 

6.- Создать Мозаику.

Сервис Catapult / NEMCatapult Эпизод 4

 

-m, -mosaicname <имя-мозайки>                               – Nombre de mosaico (имя мозаики)

-n, -namespacename <пространство имен>               —  Nombre del namespace principal
(основное пространство имен)

-a, –amount <сумма>                                                    – Cantidad de tokens (колличество токенов)

-t, –transferable   <передача, передаваемый>             – Mosaico transferible (передаваимая
мозаика)

 

 

-s, –supplymutable  <изменчивый>                              – Cantidad mutables (изменяемое
количество)

-l, –levymutable

-d, –divisibility <делимость>                     – Divisibilidad del mosaico, desde 0 hasta 6
(делимость мозаики от 0 до 6)

-u, –duration <длительность>          – Duración del mosaico en cantidad de
(продолжительность работы мозаики)

— bloques <блоки>

Сервис Catapult / NEMCatapult Эпизод 4

 

Проверить Мозаику.

Сервис Catapult / NEMCatapult Эпизод 4

  1. — Перенос 100 «01coin» из ISARQ от пользователя-01 к пользователю-02.

Сервис Catapult / NEMCatapult Эпизод 4

 

ISARQ/EG

Загрузите этот эпизод в формате PDF, нажав здесь для испанской версии и здесь для английской версии.

 

Смотрите также:

http://isarq.com/index.php/2018/06/08/catapult-episodio-1/

http://isarq.com/index.php/2018/06/19/catapult-episodio-2/

http://isarq.com/index.php/2018/07/05/episodio-3-ejecucion-del-core-y-api-rest-de-nem-catapult-en-slackware-14-2/

http://isarq.com/index.php/2018/06/08/isarq-catapult/

 

 

Share