Установка¶
Быстрый старт¶
Самый быстрый и удобный способ установки блокчейна - воспользоваться подготовленным скриптом, который запустит докер-контейнер и произведет его конфигурацию для начала работы.
Для запуска вам потребуется установленный и запущенный Docker. Воспользуйтесь инструкцией по установке с официального сайта для вашей операционной системы: https://www.docker.com/products/docker-desktop/
После установки Docker, клонируем моно-репозиторий системных контрактов и установщика блокчейна:
git clone https://github.com/coopenomics/mono
Переходим в репозиторий установщика:
cd mono
Запускаем установку:
pnpm install
Также перед продолжением необходимо установить фабрику документов weasyprint
для вашей операционной системы: https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#installation
Для фронтенд-разработки¶
Не требует запущенного блокчейна и его бэкенда локально. Подключение осуществляется к блокчейну осуществляется через testnet-api.coopenomics.world
и бэкенду кооператива через testnet.coopenomics.world/backend/api
.
Для запуска необходимо произвести конфигурацию, выбрав режим фронтенд-разработчика.
pnpm run setup
После конфигурации осуществляем запуск фронтенда:
pnpm run dev:desktop
Фронтенд запустится на 3005 порту и подключится к тестовому кооперативу. Для входа можно использовать следующие данные:
Почта: chairman.voskhod@gmail.com
Ключ: 5Hs46kBWGMKnsqntqLCinp6QSCuuWkc39DLMzaNaUjv3TFLif2U
Для фуллстек-разработки¶
Нам потребуется инфраструктура - базы данных mongo, postgres, а также локально установленный и запущенный в производство блоков контейнер блокчейна. Все они поднимаются одной командой:
docker compose up -d
После запуска инфраструктуры необходимо произвести конфигурацию для фуллстек разработчика:
pnpm run setup
Команда произведет сборку всех компонент и смарт-контрактов.
Теперь, нам необходимо запустить установку смарт-контрактов в блокчейн и конфигурацию локального окружения:
pnpm run boot
Команда boot запускает последовательный процесс полной установки всех смарт-контрактов и необходимых записей в базы данных для полностью локальной работы с системой.
Запуск фронтенда:
pnpm run dev:desktop
Фронтенд будет запущен на 3005 порту.
Запуск бэкенда:
pnpm run dev:backend
После запуска воспользуйтесь данными для входа на localhost:3005:
Почта: ivanov@example.com
Ключ: 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
Блокчейн открывает API на 8888 порту запросов и транзакций, 8080 для ws-соединений, 9876 для p2p-синронизации между нодами.
Бэкенд открывает API на 2998 порту и предоставляет GraphQL-API на localhost:2998/v1/graphql, а также на 4000 порту для извлечения исторических данных блокчейна.
Рабочий цикл¶
В случае, если в процессе установки возникли сбои, или требуется в рамках производственного процесса полностью перезапустить систему с нуля, то необходимо остановить, очистить данные и вновь запустить контейнер блокчейна командой:
pnpm run clear
После чего вновь произвести загрузку смарт-контрактов:
pnpm run boot
ВАЖНО!
В момент перезапуска все бэкенд-сервисы должен быть полностью отключены.
Для использования¶
При запуске для продакшн-использования запуск осуществляется аналогично режимам для разработчиков, но с заменой тестовых-общедоступных переменных окружения всех компонент - на реальные.