Як підняти власну ноду Карбованця (Docker)

Ноди, служби гаманців, пули тощо
Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 28 листопада 2017, 22:45

Здоров читачу!

Уважно гортаєш усі карбочати і закікавився роботою з віддаленими нодами? Тепер ти маєш шанс з мінімальними зусиллями запустити власну!

Що для цього треба:
1) Сервер (ПК, віртуальний інстанс, будь що) з Host OS що підтримує Docker та платформу x86-64.
2) Встановлений на хості Docker CE
3) Якщо маєш на сервері лінукс - онови пакети!

Список дій для запуску ноди:
1) Додати свого користувача до групи docker

Код: Виділити все

sudo useradd <твій користувач> docker

2) Створити папку у якій буде зберігатися блокчейн, наприклад:

Код: Виділити все

mkdir /home/<твій користувач>/.karbowanec

3) Завантажити або зробити образ з нодою:
3.1) Завантажити (репозиторій):

Код: Виділити все

docker pull looongcat/karbo-fullnode

3.2) Зробити самому (переконайся що це не скам):

Код: Виділити все

docker build https://github.com/Looongcat/docker-karbo-fullnode.git

3.3) Опціонально Завантажити готовий блокчейн та розпакувати його у теку з п.2. Якщо маєш wget, то можеш використати ось цього монстра:

Код: Виділити все

printf "Downloaded SHA256\t:\t %s\nOriginal SHA256\t:\t %s\n" "$(wget https://bootstrap.krbnodes.pp.ua/blockchain-$(date "+%Y-%m-%d").tar.gz && sha256sum blockchain-$(date "+%Y-%m-%d").tar.gz | awk '{ print $1 }')" "$(wget -qO- https://bootstrap.krbnodes.pp.ua/blockchain-$(date "+%Y-%m-%d").tar.gz-sha256.txt)"


4) Створити контейнер за допомогою команди (у такому вигляді підходить лише для п. 3.1):

Код: Виділити все

docker run --restart=always -it -p 32347:32347 -p 32348:32348 -v <шлях з п.2>:/home/karbo/.karbowanec --name=karbo-fullnode -d looongcat/karbo-fullnode

або

Код: Виділити все

docker run --restart=always -it -p 32347:32347 -p 32348:32348 -v <шлях з п.2>:/home/karbo/.karbowanec --name=karbo-fullnode -d looongcat/karbo-fullnode --fee-address=<твій гаманець>


Різниця між командами у тому, що перша запустить ноду, яка збирає комісію на користь розробників Карбо, а друга - на користь власника ноди (тобто тебе :) )

Додатково: для кращої утилізації системних ресурсів до команди створення можна додати флаг --cpuset-cpus=x-x (наприклад: docker run --cpuset-cpus=0-4 ...) який визначає скільки ядер виділятиметься на контейнер (після знака "=" відповідно номери процесорних ядер, починаючи з 0. Скільки у Вас ядер можна подивитись по cat /proc/cpuinfo для linux чи у devmgmt.msc для windows).



Все, тепер маєш власну ноду! Для того щоб вона працювала повноцінно тобі також знадобиться:
1) Актуальний час у Host OS (якщо ти ще не користуєшся NTP - ти точно псих)
2) Білий IP
3) Дозволити у файрволі вхідні з'єднання на порт 32348 типу TCP. Якщо маєш iptables, то пиши:

Код: Виділити все

sudo iptables -A INPUT -p tcp --dport 32348 -j ACCEPT

4) Зачекати деякий час до синхронізації блокчейна (з мого досвіду на інстансі з 1 ЦП на даний момент це займає близко 2 діб)

Завдяки ключу -i у п.4 ти маєш змогу під'єднатися до консолі контейнера командою:

Код: Виділити все

docker attach karbo-fullnode

Щоб вийти звідти натисни послідовно CTRL+P та CTRL+Q

Якщо маєш питання - я як автор Dockerfile можу спробувати відповісти на нього у цій темі.

P.S. Для власників серверів на старому чи примітивному залізі
Якщо стандартний образ для Вас не працює (помилки типу exception, illegal instruction і тому подібне) - ви можете спробувати самостійно зібрати образ з експериментальної гілки github наступною командою:

Код: Виділити все

docker build --no-cache --cpuset-cpus=x-x -t looongcat/karbo-fullnode https://github.com/Looongcat/docker-karbo-fullnode.git#experimental


де х-х - максимально доступна кількість процесорів (дивитись у графі "CPUs" команди docker info, наприклад: 0-1 для "CPUs: 2")
Востаннє редагувалось 03 квітня 2018, 15:23 користувачем Looongcat, всього редагувалось 7 разів.
You can appreciate my contribution for making Karbo great by donating at KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN
Or simply say "thank you" ;)

Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 25 грудня 2017, 14:08

Невеличке доповнення аля ЧаПи:
П) Як перевірити що нода робоча?
В) Найпростіший варіант (якщо ти далекий від консолі) - це відкрити у браузері http://<IP твого сервера>:32348/feeaddress . За цією адресою робоча нода повинна повернути у JSON форматі адресу для сбору комісій (зі статусом ОК звісно). Якщо не відкривається (а у консолі нода повністю завантажена та у процесах) - 99% що маєш проблеми з файрволом, що можна перевірити схожим методом - зробити GET запит прямо з консолі сервера з нодою за адресою вказаною вище(curl, wget). Якщо у консолі отримав відповідь (а це звернення по loopback на самого себе), а у браузері ні - це 100% файрвол.

П) Як подивитись статус блокчейна ноди не маючи гаманця під рукою?
В) http://<IP твого сервера>:32348/getinfo

П) Контейнер якийсь час працює, а потім падає. Що робити?
В) Можливо у контейнера (або у всього сервера) замало ресурсів (наприклад, ОЗП), траплялись випадки коли через брак пам'яті нода падає.
Востаннє редагувалось 20 лютого 2018, 13:15 користувачем Looongcat, всього редагувалось 1 раз.
You can appreciate my contribution for making Karbo great by donating at
KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN

Or simply say "thank you" ;)

Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 31 січня 2018, 22:22

UPD 31.01.18:

Образ ноди оновлено до CLI 1.4.6 (тепер база - Debian Stretch). Якщо бажаєте потестити - пишіть про глюки особисто мені чи у цій темі.
You can appreciate my contribution for making Karbo great by donating at
KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN

Or simply say "thank you" ;)

Sergocoss
Новачок
Повідомлень: 4
З нами з: 02 березня 2018, 12:26

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Sergocoss » 02 березня 2018, 12:42

Добрий день, чи є готове рішення для synology, буду вдячний за допомогу вналаштуванні.

Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 05 березня 2018, 12:17

Sergocoss , у даного вендора багато рішень з різним залізом та софтом, якщо маєте конкретну залізяку та намір запустити ноду - пишіть сюди або у телеграм яке залізо та який на ньому софт
You can appreciate my contribution for making Karbo great by donating at
KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN

Or simply say "thank you" ;)

Sergocoss
Новачок
Повідомлень: 4
З нами з: 02 березня 2018, 12:26

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Sergocoss » 07 березня 2018, 14:29

По залізу: 2шт "Xpenology"на HP Microserver NL-40 версія DSM 6.1.4-15217. SHR btrfs (аналог RAID 5). Залізяки працюють стабільно уже протягом 3-4 років.

Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 09 березня 2018, 15:01

Sergocoss, найперше що знайшов: https://forums.freenas.org/index.php?th ... 54l.48025/

Тобто технічно це можна зробити, тільки варто пам'ятати що контейнер є x64, і варіанту під x86 на жаль нема (не було на момент релізу останнього CLI, а пізніше я вже не дивився), а це означає що і хост треба x64.
You can appreciate my contribution for making Karbo great by donating at
KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN

Or simply say "thank you" ;)

Sergocoss
Новачок
Повідомлень: 4
З нами з: 02 березня 2018, 12:26

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Sergocoss » 11 березня 2018, 13:57

Looongcat писав:Sergocoss, найперше що знайшов: https://forums.freenas.org/index.php?th ... 54l.48025/

Тобто технічно це можна зробити, тільки варто пам'ятати що контейнер є x64, і варіанту під x86 на жаль нема (не було на момент релізу останнього CLI, а пізніше я вже не дивився), а це означає що і хост треба x64.


Ви напевно невірно мене зрозуміли, на мікросервері за допомогою спеціалізованого завантажувача запущено DSM, це ос від Synology. По суті це нічим не відрізняється від оригінального NAS просто на кілька кілобаксів дешевше. DSM 6.1.3-15152 повністю х64, DOCKER доступний серед офіційних пакетів для встановлення, логічно він теж х64.
Вкладення
Знімок екрана 2018-03-11 о 13.11.52.jpg
Знімок екрана 2018-03-11 о 13.12.27.jpg
Знімок екрана 2018-03-11 о 13.11.38.jpg

D780
Новачок
Повідомлень: 7
З нами з: 12 березня 2018, 17:08

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення D780 » 13 березня 2018, 22:58

Добрый день.
Под FreeBSD можно поднять ноду ?
Без всяких докеров и т.д. ?

Аватар користувача
Looongcat
Місцевий
Повідомлень: 78
З нами з: 24 листопада 2017, 14:16

Re: Як підняти власну ноду Карбованця (Docker)

Повідомлення Looongcat » 15 березня 2018, 09:10

D780, якщо зберете з сирців, то звісно можна, бо бінарників на гіті для freebsd я чесно кажучи не бачив
You can appreciate my contribution for making Karbo great by donating at
KfS4P6eape7iT9m12XVGr5MpTTicPHDANji41wTZ55AuLVq32Tu7NuoJqc1GHKqh3YjorSwytGegBRUxu2fZDMPMAffx9VN

Or simply say "thank you" ;)

Повернутись до “Запуск та налаштування сервісів”

Хто зараз онлайн

Зараз переглядають цей форум: Немає зареєстрованих користувачів і 1 гість