Сборка приложения из репозитория¶
Для быстрого запуска приложений с использованием репозитория GitHub выполните следующие шаги:
- Установите системное окружение и глобальные зависимости.
- Клонируйте ядро, модуль и приложение.
- Соберите и разверните приложение.
- Запустите.
Ниже - развернутая инструкция, как собрать приложение из репозитория GitHub.
Развернутая инструкция¶
Системное окружение и глобальные зависимости¶
Запуск фреймворка осуществляется в среде Node.js версии 10.x.x.
Для хранения данных необходимо установить и запустить MongoDb версии старше 3.6.
Для сборки компонентов и библиотек фреймворка необходимо установить глобально:
- пакет node-gyp
npm install -g node-gyp
. Для работы библиотеки под операционной системой семейства windows дополнительно необходимо установить пакет windows-build-toolsnpm install -g --production windows-build-tools
. - пакет сборщика проектов Gulp
npm install -g gulp@4.0
.4.0
- поддерживаемая версияGulp
. - для версий IONDV. Framework 3.x.x и более ранних нужен менджер пакетов фронтенд библиотек Bower
npm install -g bower
. Для версия 4.х.х и старше не требуется.
Ручная установка ядра, модулей и приложения¶
Рассматриваем на примере приложения develop-and-test
. Находим приложение develop-and-test
в репозитории.
Смотрим зависимости указаные в файле package.json
.
"engines": {
"ion": "1.24.1"
},
"ionModulesDependencies": {
"registry": "1.27.1",
"geomap": "1.5.0",
"graph": "1.3.2",
"portal": "1.3.0",
"report": "1.9.2",
"ionadmin": "1.4.0",
"dashboard": "1.1.0",
"lk": "1.0.1",
"soap": "1.1.2",
"gantt-chart": "0.8.0"
},
"ionMetaDependencies": {
"viewlib": "0.9.1"
"viewlib-extra": "0.1.0"
- Начинаем установку с ядра, версия которого указана в парметре
"engines": {"ion": "1.24.1"}
. Скопируйте адрес репозитория ядра и в командной строке выполните коммандуgit clone https://github.com/iondv/framework
. Перейдите в папку ядра, переключитесь на tag номера версииgit checkout tags/v1.24.1
. Так как совместимость обеспечивается на уровне метаданных, а новые версии выпускались из-за изменения технологии сборки, то вы можете использовать последние, например 4.0.0. - После этого устанавливаются необходимые для приложения модули, указанные в параметре
"ionModulesDependencies"
. Модули устанавливаются в папкуmodules
ядра, для этого перейдите в неё командойcd modules
. Клонируем модули из списка"ionModulesDependencies"
, для модуля registry это осуществляется командойgit clone https://github.com/iondv/registry
. Перейдите в папку установленного модуля, переключитесь на tag номера версииgit checkout tags/v1.27.1
. Повторите для каждого модуля. Для большинства приложений, можно использовать последние совместимые с ядром модули. - Установка самого приложения осуществляется в папку
applications
, для этого перейдите в неё командойcd ..\applications
, если вы находитесь в папке модулей. Установку выполните клонированием репозитория коммандойgit clone https://github.com/iondv/dnt_ru
. - После этого установите дополнительно необходимые приложения из параметра
"ionMetaDependencies"
. Установка осуществляется в папкуapplications
, для установки необходимо убедиться, что находитесь в папке приложений. Клонируем приложения из списка в параметре"ionMetaDependencies"
, для приложенияviewlib
осуществляется командойhttps://github.com/iondv/viewlib
. Перейдите в папку установленного приложения, переключитесь на tag номера версииgit checkout tags/v0.9.1
. Повторите для каждого приложения.
Сборка, конфигурирование и развертывание приложения¶
Сборка приложения обеспечивает установку всех зависимых библиотек, импорт данных в базу данных и подготовку приложения для запуска.
Создайте конфигурационный файл setup.ini
в папке config
, куда был клонирован фреймворк для задания основных параметров окружения приложения.
auth.denyTop=false
auth.registration=false
db.uri=mongodb://127.0.0.1:27017/db
server.ports[]=8888
module.default=registry
fs.storageRoot=./files
fs.urlBase=/files
Открываем файл в редакторе и вставляем содержимое. Самый главный параметр db.uri=mongodb://127.0.0.1:27017/ion-dnt
- он указывает на название базы, которую мы будем использовать для приложения. База данных будет создана автоматически.
Задайте переменную окружения NODE_PATH равной пути к ядру приложения следующей командой set NODE_PATH=c:\workspace\dnt
для Windows и export NODE_PATH=/workspace/dnt
для Linux, где workspace\dnt
- папка куда склонирован фреймворк.
При первом запуске необходимо выполнить npm install
- она поставит ключевые зависимости, в том числе локально сборщик gulp
.
Далее выполните команду сборки приложения gulp assemble
.
Если вы хотите выполнить импорт данных в вашем проекте, проверьте папку data
в приложении и выполните команду:
node bin/import-data --src ./applications/develop-and-test/data --ns develop-and-test
Добавьте пользователя admin с паролем 123 командой node bin\adduser.js --name admin --pwd 123
.
Добавьте пользователю права администратора командой node bin/acl.js --u admin@local --role admin --p full
.
Запуск¶
Запустите приложение командой в папке ядра npm start
или node bin\www
.
Откройте браузер с адресом http://localhost:8888
и авторизуйтесь в приложении, где 8888
- порт указанный в параметре server.ports конфигурации запуска.