🌐 EOS-In-A-Box – начните использовать EOS уже сегодня! (@someguy123)

В декабре EOS Dawn V2 был запущен в тестовом режиме. А это значит, что теперь все желающие могут поиграться с EOS и его смарт-контрактами, трансферами и просматривать свои аккаунты.

К сожалению, EOS еще не опубликовали свои докер-образы в двоичном формате, но я решил опубликовать их самостоятельно. Также я портировал Steem-in-a-box, настроив его так, чтобы он лучше работал с EOS.

Эти докер-образы, в отличие от Steem-in-a-box, созданы из официального докер-файла в репозитории EOSIO/eos. Собрать EOS сложнее, поэтому я сэкономил время и использовал их докер, который работает просто отлично :)

Шаг 1. Берем сервер!


Выберите сервер-провайдера, который вам по нраву. Я рекомендую Privex, потому что он принимает STEEM :) (дисклеймер: я являюсь генеральным директором Privex Inc. – но наши услуги пользуются популярностью в сообществе).

Пока что сеть небольшая, поэтому будет достаточно VPS даже на 2 ГБ. Если вы планируете запускать ноду заверителя EOS (производителя) во время следующего запуска Тестнета или Главной сети, то лучше запастись не менее 8 или даже 16 ГБ оперативной памяти.

Шаг 2. Установка EOS-in-a-box


EOS-in-a-box производит установку докера, берет мой образ и запускает сервер с верно настроенными портами и правильными параметрами.

Давайте приступим:

apt update
apt install git curl wget
git clone https://github.com/someguy123/eos-docker.git
cd eos-docker
./run.sh install_docker

Это установит Докер. Если вы запустились как “ubuntu” или что-то подобное, рекомендуется выйти, а затем снова войти (закрыть SSH и открыть его снова), чтобы настроить свои права доступа.
Теперь давайте возьмем мой образ и загрузим EOS!

./run.sh install

Chris: вопрос: вы улучшили архитектуру shared_memory в EOS или все равно лучше кидать все в RAM, если ты заверитель/производитель?
Daniel Larimer: мы все еще используем прежний chainbase код из Steem
Josh: выходит, что 14 из 21 должны быть злоумышленниками
Daniel Larimer: нами разработана, но пока не интегрирована новая база данных совместной памяти, спроектированная для параллельного доступа
14 злоумышленников требуется для создания фальшивого необратимого блока

Как поясняет @dantheman@dan, EOS все еще использует старый код shared_memory от Steem. Это означает, что для реального заверителя/производителя вы, очевидно, должны использовать /dev/shm (RAM-диск). EOS-in-a-box настроен для подключения /dev/shm к /shm, если вы хотите изменить свой config.ini. Когда будет выпущена полноценная версия EOS, в EOS-in-a-box будет включена конфигурация, по умолчанию использующая /dev/shm с предварительно заданным списком сидов для быстрого развертывания.

В режиме тестирования это не имеет значения, так что давайте просто начнем.

./run.sh start

EOS будет запущен, вы можете это подтвердить вводом ./run.sh status или docker ps

ubuntu@chris-eos:~/eos-docker$ ./run.sh status
Container exists?: YES
Container running?: YES
ubuntu@chris-eos:~/eos-docker$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
87f80dd1b318        eos                 "start_eosd.sh"     20 seconds ago      Up 19 seconds                           seed
ubuntu@chris-eos:~/eos-docker$

Давайте, наконец, активируем API кошелька и перезапустим его.

nano data/config.ini

Добавьте в конец файла

plugin = eosio::wallet_api_plugin

Сохраните и закройте файл (для nano это CTRL-X, и введите yes для сохранения)

Теперь давайте перезапустим EOS:

./run.sh restart

Используем кошелек


Кошелек немного отличается от STEEM. Вот несколько примеров его использования:

Создать кошелек

ubuntu@chris-eos:~/eos-docker$ ./run.sh wallet create -n test
Creating wallet: test
Save password to use in the future to unlock this wallet.
Without password imported keys will not be retrievable.
"PW5KhAdia26ZWmvpPFPX6G3ppCpzPAaumHbmLgaKejtsQ13mNiS8g"



Закрыть кошелек

ubuntu@chris-eos:~/eos-docker$ ./run.sh wallet lock -n test
Locked: test



Открыть кошелек

ubuntu@chris-eos:~/eos-docker$ ./run.sh wallet unlock -n test
password: Unlocked: test



Импортировать ваш приватный ключ
(да, это рандомный приватный ключ. нет, он не содержит сколько-нибудь токенов EOS)

ubuntu@chris-eos:~/eos-docker$ ./run.sh wallet import -n test 5JtrsfV1SaQmuSWV4qpwqHqK2Pk4idvwskumZKWF4DXYJRn9iWE
imported private key for: EOS5GjCUAzNha1dmLVgtY2JxqjHZ9Rb33FMWdEsmUEM6sSd7t7nAG

Используем клиент


Помимо кошелька у EOS есть свой “клиент”. Чтобы сделать его простым в обращении, вы можете использовать

./run.sh client

Пример

ubuntu@chris-eos:~/eos-docker$ ./run.sh client version client
Build version: 9703495c

Запрос публичного тестнета

Для запроса публичного тестнета вы должны настроить свой хост на testnet1.eos.io – в настоящее время не существует безопасного р2р функционала, поэтому вы должны направить свой клиент на их публичный сервер; вы не можете подключить локальный тестнет к публичному тестнету.

Chris: так как мне подключить свой EOS к главному тестнету?
Kevin Heifner: В предстоящем релизе планируется выполнять подключение при помощи eosd. Совсем скоро мы анонсируем выпуск.

Пример – Получить блок

ubuntu@chris-eos:~/eos-docker$ ./run.sh client -H testnet1.eos.io -p 80 get block 10000
{
  "previous": "0000270f69c1a22dc6463335325b01ac03b25af8891dfc88ac0418f88b62f062",
  "timestamp": "2017-12-04T22:41:46",
  "transaction_merkle_root": "0000000000000000000000000000000000000000000000000000000000000000",
  "producer": "initq",
  "producer_changes": [],
  "producer_signature": "1f77718a0efb56ef43a0adcd10108ec058aa9760b2a3bc59dcae967637a2ac72dc68077d232026de5d929a1d55a4bbd0bc4d040d44dc2380ac4e1107f1a61e170b",
  "cycles": [],
  "id": "00002710ebdfd9569d544ed746bb49d7a93e813190f3b4d138a0874d4da05cdd",
  "block_num": 10000,
  "ref_block_prefix": 3612234909
}

Узнаем свой юзернейм


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

https://eosio.github.io/genesis/tools/account-name/index.html и введите ваш публичный ключ EOS, либо ваш ETH адрес, использованный для покупки токенов.

После этого вы можете увидеть свой аккаунт с помощью клиента:

Пример

ubuntu@chris-eos:~/eos-docker$ ./run.sh client -H testnet1.eos.io -p 80 get account yourname
{
  "account_name": "yourname",
  "eos_balance": "999570.0000 EOS",
  "staked_balance": "0.0000 EOS",
  "unstaking_balance": "0.0000 EOS",
  "last_unstaking_time": "1969-12-31T23:59:59",
  "permissions": [{
...

Могу ли я настроить заверителя (производителя)?


Нет. Смотрите предыдущий скриншот в разделе “Используем клиент”. В настоящее время невозможно запустить производителя или даже подключить EOSD к основной сети.

Но, по крайней мере, это раннее доказательство концепции, с которым можно поиграться :)

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


Переведено @blockchained

Оригинал поста: ЗДЕСЬ


Если вам нравится то, что мы делаем - поддержите делегата blockchained на Голосе!

блокчейнeosразработка
25%
20
153
236.477 GOLOS
0
В избранное
BLOCKCHAINED
Decentralization is a product
153
0

Зарегистрируйтесь, чтобы проголосовать за пост или написать комментарий

Авторы получают вознаграждение, когда пользователи голосуют за их посты. Голосующие читатели также получают вознаграждение за свои голоса.

Зарегистрироваться
Комментарии (6)
Сортировать по:
Сначала старые