Что такое geth ethereum

Содержание
  1. Создаем приватную сеть Ethereum Geth в контейнерах Docker
  2. Устанавливаем Docker
  3. Создаем пользователя, каталоги и файлы
  4. Создаем сеть и контейнеры
  5. Создание узлов приватной сети Ethereum и аккаунтов
  6. Запуск узлов Geth
  7. Объединение узлов в сеть
  8. Работа с узлами сети с помощью Node.js
  9. Что дальше
  10. Читают сейчас
  11. Редакторский дайджест
  12. Похожие публикации
  13. Nemesida WAF: Docker-контейнер
  14. Краткая история о том, как развернуть веб-сервер Flask в docker контейнере
  15. Установка docker-контейнеров c Zabbix на Raspberry Pi
  16. Вакансии
  17. Минуточку внимания
  18. Комментарии 4
  19. Лучшие Ethereum кошельки: подробная инструкция по скачке и установке
  20. Для начала ставим Chocolatey
  21. Онлайн курс по Linux
  22. Выбираем версию клиента Geth: stable или develop
  23. Системные требования для ноды криптовалюты
  24. Размер блокчейна
  25. Производительность дисков
  26. Процессор и память
  27. Операционная система
  28. Запускаем клиент Geth версии 1.0.1
  29. Как перевести эфир командой в консоли Ethereum geth
  30. Что нужно, чтобы начать майнинг Ethereum
  31. Создание смарт-контракта
  32. Ethereum Block Explorer
  33. Список мобильных кошельков Ethereum
  34. Как создать Эфириум кошелек на телефоне
  35. Создаем пользователя, каталоги и файлы

Создаем приватную сеть Ethereum Geth в контейнерах Docker

Если вам нужно развернуть приватную сеть Ethereum на базе Geth, то это можно сделать, например, создавая узлы сети на физических серверах или виртуальных машинах. Однако намного легче использовать готовые образы (Images) контейнеров Geth из репозитория Docker hub. В этом случае можно установить целую сеть узлов даже на одной виртуальной машине или на одном физическом сервере.

В этой статье мы расскажем как установить Docker на сервере с ОС Debian 9 (виртуальном или физическом), как создать несколько контейнеров с работающим Geth и объединить их в приватную сеть. Мы приведем пример скрипта для Node.js, который обращается к узлам Geth, работающим в контейнерах.

Устанавливаем Docker

Установка Docker описана на официальном сайте. Для Debian 9 и 10 вы найдете подробные инструкции на сайте https://docs.docker.com/install/linux/docker-ce/debian/.

Прежде всего, обновите пакеты:

Далее установите необходимые пакеты следующей командой:

Добавьте официальный ключ GPG:

Убедитесь, что вы получили ключ с отпечатком 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88:

Добавьте стабильный репозиторий Docker:

Обновите пакеты и установите Docker:

Теперь остается только проверить, что все сделано правильно. Для этого запустите образ (Image) hello-world:

Эта команда загрузит нужный образ, и запустит на выполнение. Как и следовало ожидать, вы увидите на консоли сообщение «Hello from Docker!».

Как видите, ничего сложного! Теперь можно приступить к созданию приватной сети Geth с узлами, работающими в контейнерах.

Создаем пользователя, каталоги и файлы

Создайте на сервере пользователя book, а в его домашнем каталоге — следующие подкаталоги:

Далее в каталоге /home/book/dock-test создайте файл Dockerfile:

Этот файл будет использован при создании контейнеров Docker.

Еще вам нужно будет создать файл /home/book/dock-test/distr/genesis.json, необходимый для инициализации узлов сети Ethereum:

Здесь мы задаем идентификатор нашей приватной сети 98760. Для облегчения майнинга мы указали в параметре difficulty значение 10. Это позволит работать на виртуальных машинах с относительно небольшим объемом памяти (например, 4 Гбайта).

Создаем сеть и контейнеры

Для того чтобы наши узлы могли обмениваться данными между собой, создадим сеть между контейнерами:

Далее нужно сделать текущим каталог /home/book/dock-test, в котором расположен файл Dockerfile. Затем создайте нужное количество контейнеров, например, три:

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

Теперь откройте четыре консольных окна. В трех из них мы будем работать с контейнерами, а в четвертом — получать необходимые нам данных о контейнерах и сети.

В первом консольном окне выдайте такую команду:

Вы увидите приглашение вида:

Во втором и третьем консольном окне введите, соответственно, следующие команды:

Создание узлов приватной сети Ethereum и аккаунтов

На данный момент у нас работают три контейнера с Geth. Давайте создадим в каждом из них узел нашей приватной сети Ethereum и аккаунт.

Введите в первых трех консольных окнах команду:

Нужно будет ввести пароль. Для простоты при тестах используйте один и тот же пароль на каждом узле, но запишите его где-нибудь. Если вы забудете пароль, то его никак не получится восстановить.

После создания аккаунтов на консоли появятся публичные адреса ключей, похожие на эти:

Сохраните адреса (у вас будут другие), т.к. они нам понадобятся для запуска узлов.

Теперь нужно запустить инициализацию узлов. Это делается при помощи команды:

Введите эту команду во всех консольных окнах наших контейнеров. Параметр —nousb отключает все коммуникации с USB-устройствами.

Запуск узлов Geth

Теперь откройте по очереди каждое из консольных окон и запустите там Geth с помощью приведенных ниже команд.

В каждом из открытых окон появятся сообщения о генерации DAG:

Дождитесь, пока генерация будет завершена. После этого eth.hashrate и eth.blockNumber будут отличны от 0:

Проверить текущий баланс аккаунта можно так:

Чтобы вам не мешали сообщения о создании новых блоков и другие сообщения в консольных окнах, завершите работу Geth командой exit и перезапустите заново, указав значение параметра verbosity, равным 1.

Объединение узлов в сеть

Для начала мы посмотрим список запущенных контейнеров. Выдайте из четвертого консольного окна следующую команду:

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

Для объединения контейнеров в сеть вам потребуются адреса IP контейнеров в нашей приватной сети PRIVATENET. Вы можете получить эти адреса по идентификатору контейнера, например, следующим образом:

Также можно воспользоваться командой docker network inspect PRIVATENET:

Сопоставляя данные, полученные этими командами, составим список IP-адресов для наших контейнеров:

Разумеется, у вас будет другой список, и при перезапуске контейнеров эти адреса могут меняться.

Получив список адресов, перезапустите geth во всех контейнерах, указав в параметре —rpcaddr адрес своего контейнера. Можно, конечно, задать адрес 0.0.0.0, но это плохо с точки зрения безопасности — к узлу сможет подключиться кто или что угодно. Например, это могут быть боты, которые попытаются «увести» все средства из этих узлов, дождавшись, когда узел будет разблокирован.

Читайте также:  Оценка окупаемости проекта пример

Для объединения узлов вам нужно будет воспользоваться командой admin.addPeer. В качестве параметра этой команде нужно передать URL в формате enode. Получите этот URL для каждого контейнера с помощью команды admin.nodeInfo.enode:

Полученные адреса сохраните.

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

Здесь мы передали адрес URL, указав в нем адрес IP подключаемого узла. Проделайте аналогичную процедуру и на других узлах сети.

Для того чтобы проверить, что соединение установлено, воспользуйтесь командой admin.peers. Если соединений нет, команда вернет пустой результат:

В нашем случае команда показывает, что первый узел с адресом 172.21.0.2 подключен к узлам с адресами 172.21.0.3 и 172.21.0.4:

Обратите внимание, что после успешного объединения узлов и их синхронизации команда eth.blockNumber будет возвращать одно и то же значение при запуске в любом из наших трех контейнеров.

Команда web3.fromWei( eth.getBalance(eth.coinbase) ) напротив, будет показывать разный баланс на разных узлах, т.к. у каждого узла свой собственный аккаунт.

Работа с узлами сети с помощью Node.js

В листинге 3 мы привели простой скрипт, работающий под управлением Node.js, который показывает на консоли список аккаунтов указанного узла и баланс каждого из них:

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

Что дальше

Тема разработки ПО для криптовалют вообще и для Ethereum в частности довольно увлекательна. Если после прочтения этой статьи у вас появились вопросы и захотелось узнать больше, читайте мою книгу «Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство», которая вышла в издательстве Литрес.

Также возможно, вам пригодится хорошая шпаргалка по командам Docker.

Буду благодарен за любые замечания и дополнения по статье и книге!

Читают сейчас

Редакторский дайджест

Присылаем лучшие статьи раз в месяц

Скоро на этот адрес придет письмо. Подтвердите подписку, если всё в силе.

Похожие публикации

Nemesida WAF: Docker-контейнер

Краткая история о том, как развернуть веб-сервер Flask в docker контейнере

Установка docker-контейнеров c Zabbix на Raspberry Pi

Вакансии

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Минуточку внимания

Комментарии 4

Это может пригодится в том случае, если вам нужно быстро развернуть приватную сеть узлов Ethereum для тестирования или в учебных целях, а не ограничиваться только одним узлом. Docker сокращает затраты времени и ресурсов на создание такой сети. Или если вам просто нужно быстро развернуть приватную сеть на большом количестве узлов.

В этой статье не рассматривается методика полностью автоматического развертывания, в каждый узел приходится заходить отдельно, создавать аккаунт и выполнять инициализацию. Возможно, позже я рассмотрю полностью автоматическое развертывание тестовой приватной сети.

нужно быстро развернуть приватную сеть узлов Ethereum для тестирования или в учебных целях

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

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

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

Разумеется, можно отлаживать смарт-контракты в тестовых сетях, например, в Rinkeby, однако намного легче это делать именно в приватной сети. Что же касается сетей для нужд организаций или частных лиц, то по понятным причинам едва ли их стоит реализовывать на бесплатных тестовых сетях.

Один узел — это вырожденный случай, пригодный лишь для тестирования.

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

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Источник

Лучшие Ethereum кошельки: подробная инструкция по скачке и установке

Update 10.02.2016: в этой статье информация новее: Обзор клиентов для сети Ethereum, зима 2020.

Основная инструкция тут: https://github.com/ethereum/go-ethereum/wiki/Installation-instructions-for-Windows.

Для начала ставим Chocolatey

Официальный сайт: https://chocolatey.org/

Chocolatey — это установщик/менеджер пакетов для Windows, аналогичный apt-get на Ubuntu. Он упрощает процесс обновления вашего клиента до последнего релиза.

Открываем cmd.exe и вводим:

@powershell -NoProfile -ExecutionPolicy Bypass -Command «iex ((new-object net.webclient).DownloadString(‘https://chocolatey.org/install.ps1’))» && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

Онлайн курс по Linux

Если вы хотите стать специалистом, отвечающим за настройку процессов непрерывной разработки и доставки (continuous integration / continuous delivery), рекомендую познакомиться с онлайн-курсом CI/CD в OTUS. Курс не для новичков, для поступления нужны хорошие знания по Linux. Обучение длится 3 месяца, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:

  • Освоение популярной методики непрерывной разработки и поставки программного обеспечения Continuous Integration и Continuous Delivery на GitLab.
  • Партнером данного курса является Selectel. Вам выдадут промокоды на ресурсы Selectel, чтобы выполнять практические задания.
  • На курсе предусмотрена песочница в виде стендов для отработки студентами практических навыков.
  • В качестве выпускной работы вам будет предложено реализовать процессы CI/CD для любого opensource-проекта на ваш выбор.

Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Выбираем версию клиента Geth: stable или develop

После установки Chocolatey необходимо выбрать, с какой версией клиента вы будете работать — stable или develop. Так как Ethereum все еще находится в активной стадии разработки, то различия в версиях могут быть для разработчиков и майнеров значимыми. Если вам требуется клиент только для работы с балансом, то вы можете выбрать версию stable. Если клиент требуется для разработки приложения или майнинга, то лучше использовать develop.

Читайте также:  Что такое канты с рампы

Для установки stable версии выполняем команду:

choco install geth-stable

Для установки develop версии выполняем команду:

choco install geth-latest

Системные требования для ноды криптовалюты

Размер блокчейна

Обращаю сразу внимание на самое основное. Внимательно следите за размером блокчейна валюты, ноду которой вы будете настраивать. Покупайте сервер с большим запасом, так как блокчейн некоторых криптовалют может стремительно расти. Из недавнего примера — эфир. До нового года, если не ошибаюсь, ее блокчейн был менее 100 гб, а сейчас что-то в районе 500 гб. У меня все ноды посыпались из-за этого, пришлось срочно решать вопрос со свободным местом.

Производительность дисков

Далее нужно обращать внимание на производительность дисков. Нода криптовалюты — это огромное количество мелких, зачастую очень мелких файлов, счет которых может идти на миллионы. Далее я подробно на этом остановлюсь, когда будем cardano устанавливать. Сейчас дам универсальный совет. Если у вас обычные SATA диски, то один диск нормально тянет одну ноду. Если ставить 2-3 ноды криптовалюты, то будет плохо, со временем сервер может зависать из-за огромного iowait.

Это очень условные примеры, потому что разные ноды по разному нагружают систему. Эфир больше всех, биткоин поменьше, остальные примерно одинаково.

Процессор и память

Я поднимаю ноды в виртуальных машинах. Обычно придерживаюсь таких параметров. Для ноды Etherium выделяю 4 ядра процессора, 8 гигабайт памяти. Для bitcoin 2 ядра, 8 памяти. Для всех остальных 2 ядра, 4 гб памяти. Если память есть свободная, то лучше всем по 8 давать.

Операционная система

Я буду устанавливать криптовалютные ноды на Ubuntu 16. Хоть я и не очень люблю эту систему, но так проще всего. Обычно разработчики нод объявляют поддержку именно этой системы. Под нее всегда есть готовые сборки и скрипты установки. С другой версией линукс придется тратить больше времени.

Самый простой вариант — использовать готовые образы docker. Я не знаю, легко ли они находятся под все криптовалюты и насколько актуальны. Сам я не использую докер в данном случае, потому что установка очень простая и лишняя прослойка в виде докера не нужна. Если вам реально нужны контейнеры докер для нод криптовалют, сможете собрать их сами, если умеете работать с docker.

Запускаем клиент Geth версии 1.0.1

Как я выше сказал, самая сложность была в версии 1.0.0, так как требовалось сгенерировать Genesis block и подключить его при запуске. В версии 1.0.1 этого не требуется, соответственно, весь запуск клиента сводится к выполнению команды в консоли:

После чего начнется синхронизация. Спустя 3 недели после запуска сети, процесс синхронизации не занимает много времени (не более 10 минут).

Также на рабочем столе у вас появится .bat файл для запуска клиента в консоли с рабочего стола.

Как перевести эфир командой в консоли Ethereum geth

Написано:
23.07.2016
Автор:
Antonio
Кошелек Ethereum Wallet который день меня расстраивает — тупо не выполняет переводы. Бьюсь как рыба об лед — уже и увеличивал комиссию и пробовал Mist — безрезультатно.

Версия последняя — 0.8.1, раньше перевод Eth работал, не с первого раза, но меняя размер комиссии удавалось найти баланс и перевод проходил.

Сейчас отправляю Ethereum, транзакция появляется в истории в кошельке, висит как неподтвержденная и ее нельзя найти в блокчейне по хэшу. А потом она просто пропадает из истории. Одна радость эфирки не исчезают.

Поэтому решил научиться переводить эфир в командной строке или по-другому говоря в консольном режиме используя geth.

Запускаем консольный режим — команда (подробнее где найти geth я писал в предыдущей заметке о Eth)

geth console

geth console
Дальше для совершения перевода нам нужно разблокировать свой аккаунт — для этого выполняем команду и вводим пароль (от кошелька Ethereum).

personal.unlockAccount(eth.coinbase,»password»,300)

personal.unlockAccount(eth.coinbase,»password»,300)
где password — ваш пароль, 300 — время разблокировки в секундах (использовать не обязательно)

В этом варианте команда удобная в использовании, но есть недостаток — пароль приходится держать в открытом виде и он может осесть где-нибудь в логах или скринах, в общем так небезопасно.

Лучше использовать такой вариант, а пароль вводить отдельно и его не будет видно.

personal.unlockAccount(eth.coinbase)

personal.unlockAccount(eth.coinbase)
Если пароль введен верно, то результат команды будет True

Для перевода эфира на нужный адрес выполняем команду

eth.sendTransaction()

eth.sendTransaction()
где 0x878a05b899407af6890f79235af1815bcf47d39f — адрес кому мы переводим эфир (адрес указан для примера!, используйте свой правильный адрес) 2.50 — количество эфириума, которое нам нужно перевести.

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

Фразы: как сделать перевод эфира из командной строки, не отправляется эфир из кошелька, перевод исчезает из истории кошелька и не проходит.

Поделиться с друзьями или в соц.сетях (спасибо)

Что нужно, чтобы начать майнинг Ethereum

  • Видеокарта с хорошей производительностью, как минимум одна, но оптимально 4-6 GPU на один компьютер-ферму.
  • Естественно компьютер (системный блок) или ферма с установленной операционной системой (Windows x64). Именно 64 разрядная версия.
  • Определится с валютой которую будем майнить. На алгоритме Эфириума (dagger hashimoto) есть сразу несколько криптовалют, самые крупные из них: Ethereum Classic (ETC), Musicoin (MUSIC) и прочие.
  • Так как майнинг у нас онлайн, то нужен интернет. Скорость быстрая не нужна, но желателен хороший пинг, об этом ниже.
  • Выбрать пул (POOL) где мы будем майнить ethereum. Далее выбираем программу майнер и настраиваем.
  • Выбрать биржу или Эфириум кошелек куда будут капать и копится наши «намайненые» монеты, а так же сервисы где можно обменять наши заработанные монеты на рубли и вывести на карту (обзор криптовалютных обменников).

Интернет быстрый не обязателен, но он должен быть с хорошим пингом. Если подключать через кабель, то конечно это лучший вариант, но и тоже Wi-Fi подойдет.

Создание смарт-контракта

Теперь всё готово для написания самого первого смарт-контракта, который мы запустим в сети Ethereum. Скопируйте следующий код и вставьте его в онлайновый редактор remix

. Это очень простой смарт-контракт — я даже не хочу объяснять его построчно. В следующей статье подробно рассмотрим язык программирования Solidity.
pragma solidity ^0.4.11; contract Hello < // a string variable string public greeting; // the function with the same name as the class is a constructor function Hello(string _greeting) < greeting = _greeting; >// change the greeting message function setGreeting(string _greeting) < greeting = _greeting; >// get the greeting message function greet() constant returns (string _greeting) < _greeting = greeting; >>
Если вы не меняли настройки по умолчанию в remix

, то они установлены на автоматическую компиляцию. Если нет, то надо скомпилировать код.

После компиляции при нажатии кнопки Details

вы увидите расчётное количество газа, необходимое для создания этого смарт-контракта.

Ethereum Block Explorer

Возможно, вы знакомы с сервисом etherscan

для сканирования публичного блокчейна Ethereum. Но его нельзя направить на наш локальный блокчейн. Хотя Ethereum Block Explorer даже близко не сравнится по функциональности с
etherscan
, он вполне подходит для изучения того, что происходит в нашем локальном блокчейне.

Для установки программы сначала возьмём исходники со следующего репозитория.

git clone https://github.com/carsenk/explorer

Затем запустим команду установки из директории Ethereum Block Explorer.

По окончании установки запустите Ethereum Block Explorer

следующей командой — и получите доступ к веб-консоли через https://localhost:8000.

Перед подключением Ethereum Block Explorer

к локальному блокчейну убедитесь, что запустили узел майнинга следующей командой с параметром —rpccorsdomain «*» — его значение мы обсуждали ранее.

geth —mine —rpc —rpccorsdomain «*» —networkid —datadir

: Обсуждение этой статьи на Hacker News см. здесь. Не стесняйтесь присоединяться.

Список мобильных кошельков Ethereum

Рассмотрим удобные хранилища для IOS и Android, которые легко устанавливаются на мобильный телефон:

  1. Enjin – мультивалютный клиент для Андроид. На Google Play приложение оценили в 4.7 баллов. Кошелек позволяет совершать основные операции с криптовалютой, в том числе отслеживать историю транзакций, участвовать в ICO, следить за курсом Эфира, импортировать секретные ключи с внешних ресурсов. Двухуровневая степень защиты минимизирует риски удаленного взлома. При помощи мнемонической фразы можно восстановить доступ к профилю с другого мобильного телефона. Из недостатков – отсутствие функции внутреннего обмена и непростой интерфейс.
  2. EtherWallet – клиент для Android, который имеет простой интерфейс и русскоязычную версию сайта. Приложение характеризуется широким функционалом: продажа/покупка Эфириума и поддерживаемых токенов, импорт секретных ключей с внешних ресурсов, возможность отправки резервной копии на email для восстановления аккаунта, создание смарт-контрактов. Программа регулярно обновляется и расширяет свои возможности. Из недостатков – на старых версиях ОС приложение может подтормаживать.
  3. Ethereum Wallet – удобный бумажник с хорошими отзывами. Поддерживает Эфириум и токены ERC20. Приложение позволяет импортировать секретные ключи со сторонних сервисов и создавать несколько аккаунтов на одном мобильном устройстве. Интерфейс на русском языке отсутствует, поэтому у нас он не пользуется особой популярностью. Однако пользователи, которые скачали приложение на Андроид, оценили его качество в 4.5 баллов.
  4. Ethereum Wallet by Freewallet – мобильное приложение для IOS. Можно бесплатно скачать в App Store. Есть возможность входа через email и Facebook. Радует широкий функционал кошелька: отслеживание текущего курса Эфириума, письма о проделанных транзакциях на электронную почту, двухфакторная аутентификация и т. д. Из недостатков – отсутствие русскоязычного интерфейса. Также пользователи отмечают, что при восстановлении пароля на email могут долго не приходить письма.
  5. Trust – приложение для IOS. Славится широкими функциональными возможностями, оперативной работой и удобным интерфейсом. Trust позволяет отслеживать курс Эфириума в режиме реального времени, создавать резервную копию, участвовать в ICO. Еще одно преимущество клиента – синхронизация с аппаратными кошельками.
  6. BRD – мультивалютный кошелек для IOS с поддержкой Эфириума. Функционал клиента стандартный, разве что есть возможность покупать ETH за другие цифровые монеты. Из недостатков – слабая защита, отсутствие функции импорта приватных ключей.

Как видим, выбрать есть из чего. Это основные, но далеко не все мобильные приложения для IOS и Android.

Как создать Эфириум кошелек на телефоне

Рассмотри на примере популярного кошелька Enjin Wallet. Напомню, что приложение доступно для Андроид. Но обладатели IOS также в скором времени смогут пользоваться клиентом, поскольку создатели активно работают над новой версией.

  1. Для создания бумажника зайдите в Google Play или перейдите по ссылке https://play.google.com/store/apps/details?id=com.enjin.mobile.wallet.
  2. Нажмите Install.
  3. После скачивания программы нажмите Open.

  1. Теперь создаем кошелек. Для этого нажимаем Creat Wallet и принимаем условия.
  2. Придумываем пароль и переходим к следующему шагу – Next Step.
  3. Подтверждаем пароль и движемся дальше – Next Step.

  1. Сервис сгенерирует восстанавливающую фразу. Запоминаем или записываем. Чтобы увидеть все слова фразы, нужно использовать кнопку в верхнем правом углу.
  2. Для безопасности программа попросит проверить случайные слова из Seed-фразы.
  3. Выбираем валюту и жмем Сreate Wallet.

Теперь можно приступать к полноценной работе с кошельком.

Создаем пользователя, каталоги и файлы

Создайте на сервере пользователя book, а в его домашнем каталоге — следующие подкаталоги: /home/book/dock-test /home/book/dock-test/distr Далее в каталоге /home/book/dock-test создайте файл Dockerfile:
Листинг 1. Файл /home/book/dock-test/Dockerfile

FROM ubuntu:16.04 LABEL version=»1.0″ LABEL maintainer=»[email protected]» ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install —yes software-properties-common RUN add-apt-repository ppa:ethereum/ethereum RUN apt-get update && apt-get install —yes geth RUN adduser —disabled-login —gecos «» eth_book COPY distr /home/eth_book/distr RUN chown -R eth_book:eth_book /home/eth_book/distr USER eth_book WORKDIR /home/eth_book RUN geth —nousb init distr/genesis.json ENTRYPOINT bash
Этот файл будет использован при создании контейнеров Docker.
Еще вам нужно будет создать файл /home/book/dock-test/distr/genesis.json, необходимый для инициализации узлов сети Ethereum:

Листинг 2. Файл /home/book/dock-test/distr/genesis.json

< «config»: < «chainId»: 98760, «homesteadBlock»: 0, «eip150Block»: 0, «eip155Block»: 0, «eip158Block»: 0 >, «difficulty»: «10», «gasLimit»: «5100000», «alloc»: <> >
Здесь мы задаем идентификатор нашей приватной сети 98760. Для облегчения майнинга мы указали в параметре difficulty значение 10. Это позволит работать на виртуальных машинах с относительно небольшим объемом памяти (например, 4 Гбайта).

Источник

Читайте также:  Таблицы по окупаемости затрат
Оцените статью