3.8 KiB
Установка
Инструкция для установки приложения
Требования к системе
Требования к окружению для сборки и запуска приложения:
- CouchDB в качестве хранилища данных
- NodeJS для сборки и запуска backend-а и frontend-а
Доступы к внешним системам:
- Токен для подключения telegram-бота
- Токен для доступа к API Redmine
Подготовка и запуск couchdb
CouchDB необходим для хранения данных.
Для запуска можно воспользоваться любым удобным сопособом.
Пример с помощью docker-compose
-
docker-compose.yml:version: '3.1' services: couchdb: image: apache/couchdb:latest restart: always ports: - 127.0.0.1:5984:5984 volumes: - ./couchdb-data:/opt/couchdb/data environment: - COUCHDB_USER - COUCHDB_PASSWORD -
Так же нужно указать имя и пароль с помощью файла
.env:COUCHDB_USER=admin COUCHDB_PASSWORD=password -
Создать папку
couchdb-dataдля вольюма определённого для контейнера вdocker-compose.yml:mkdir couchdb-data -
Для запуска воспользоваться командой:
docker-compose up -d
Установка зависимостей для backend-а и frontend-а
Backend и frontend написаны на языке typescript. Для загрузки и запуска необходимо выполнить:
cd $PROJECT_DIR && npm install
cd $PROJECT_DIR/frontend && npm install
Настройка
Нужно скопировать все конфигурационные файлы CONFIG_NAME.jsonc.dist в CONFIG_NAME.jsonc:
cd $PROJECT_DIR/configs/
cp calendar-enhancer.jsonc.dist calendar-enhancer.jsonc
cp current-user-rules.jsonc.dist current-user-rules.jsonc
cp eccm-config.jsonc.dist eccm-config.jsonc
cp issue-event-emitter-config.jsonc.dist issue-event-emitter-config.jsonc
cp main-config.jsonc.dist main-config.jsonc
cp redmine-status-changes-config.jsonc.dist redmine-status-changes-config.jsonc
cp redmine-statuses-config.jsonc.dist redmine-statuses-config.jsonc
cp simple-kanban-board-config.jsonc.dist simple-kanban-board-config.jsonc
Или можно взять за основу файлы из папки $PROJECT_DIR/configs/configs.example/ или в качестве примеров для заполнения. В этих файлах можно обратить внимание на строчки с TODO и рекоментациями что нужно указать в конфигурационном файле. Там могут встречаться такие рекомендации как:
- Указать host, port, username и password для доступа к couchdb
- Указать token от бота telegram
Запуск приложения
-
Нужно сделать сборку frontend-а:
cd $PROJECT_DIR/frontend/ && npm run build -
Сделать сборку или можно просто запустить backend:
cd $PROJECT_DIR/ && npm run start
Если нужно запустить приложение с явным указанием порта, то можно воспользоваться переменной окружения PORT.