Версия:

Как начать работу с GoCore

В данном разделе описаны шаги по развертыванию и первичному запуску проекта на базе ядра GoCore.

1. Подготовка окружения

СУБД (MariaDB)

Для работы ядра требуется установленная MariaDB версии 10 и выше.

2. Получение кодовой базы

3. Первичная сборка

Необходимо выполнить первичную сборку фронтенд-части и установку зависимостей.

  1. Выполните запуск скрипта firstBuild из package.json:

    npm run firstBuild
    

    Этот скрипт последовательно выполняет: npm i && cd public && npm i && cd .. && babel public_src --out-dir public --copy-files.

  2. В дальнейшем при разработке фронтенда используйте команду:

    npm run watch
    

4. Настройка конфигурации

Файл config/config.json

Файл конфигурации исключен из Git и создается автоматически при первом запуске. После создания его необходимо отредактировать.

  1. Запустите проект (команда npm run run или node bin/www.js).
  2. Дождитесь появления ошибки о настройках БД и отредактируйте созданный файл config/config.json.

Основные параметры:

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

5. Запуск и отладка

Компиляция TypeScript

Ядро поставляется с уже скомпилированным кодом (JS), но для разработки на TS вам потребуется компиляция:

Основной процесс

Запустите сервер:

npm run run
# или
node bin/www.js

Использование альтернативного конфига

Вы можете запустить проект с другим конфигурационным файлом (например, для отладки на копии продакшн-базы):

node bin/www.js prod.json

Файл должен находиться в директории config/.

Авторизация

После запуска перейдите по ссылке, отображенной в консоли.

Важные нюансы при первом запуске

  1. Первый запуск: Создается config.json, процесс завершается с ошибкой подключения к БД.
  2. Второй запуск: После настройки подключения ядро начинает заливать дамп БД из файла DB/ccs.init.sql. Это занимает некоторое время.
  3. Дождитесь сообщения: INFO: cMysql.getConnection. Database has been filled. Enjoy your work!.
  4. Перезапустите процесс еще раз.

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

6. Резюме для разработчика