Сервер SmartESP VEGA
Cервер SmartESP VEGA доступен в двух вариантах:
- Подготовленный (облачный) или Enterprise (on-cloud)
- Собственный (локальный) или Local (on-premise)
Подготовленный вариант не требует от Вас сложных действий, он уже устанавлен на нашем сервере и готов к использованию.
Если же Вы выбираете вариант Собственного (локального) сервера, то в этом случае, Вам потребуется отдельный компьютер на который установливается сервер SmartESP VEGA с помощью технологии docker-контейнера: docker:/smartesp/smartesp-vega.
Однако, для получения уведомлений от проектов и удаленного обновления микропрограммы контроллеров потребуется его регистрация.
Предположим, что у Вас уже есть локальный сервер на котором установлена ОС семейства Linux, например можно использовать Ubuntu 20.04 LTS.
- Подготовка директорий:
- Создайте новую директорию по пути /var/smartesp, которая станет основной для проекта:
$ mkdir /var/smartesp
- Создайте директорию db внутри /var/smartesp для базы данных:
$ mkdir /var/smartesp/db
- Настройка конфигурационных файлов:
- Перейдите в рабочую директорию проекта:
$ cd /var/smartesp
- Создайте и отредактируйте файл
config.ini
со следующим содержимым (Вы можете использовать команду:nano config.ini
):; Code page
CHARSET = "UTF-8"
; Database
DB_HOST_NAME = "db"
DB_NAME = "smartesp_db"
DB_USER_NAME = "smartesp_user"
DB_USER_PASS = "smartesp_pass"
; Secret key to restrict calling of the special cron-scripts
MASTER_KEY = "master_key"
; User registration secret key (allow all if empty)
REGISTER_KEY = ""
; Log retention period with full report, days
SAVE_LOG_PERIOD = 2
; Retention period for the summarized report archive, days
SAVE_ARCHIVE_PERIOD = 1000 - Создайте и отредактируйте файл
docker-compose.yml
со следующим содержимым (Вы можете использовать команду:nano docker-compose.yml
):version: '3'
services:
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: mysql_passkey
MYSQL_DATABASE: smartesp_db
MYSQL_USER: smartesp_user
MYSQL_PASSWORD: smartesp_pass
volumes:
- /var/smartesp/db:/var/lib/mysql
restart: always
web:
depends_on:
- db
image: smartesp/smartesp-vega:stable
volumes:
- /var/smartesp/config.ini:/var/www/html/config.ini
ports: - 80:80
restart: always - Установка и запуск контейнера:
- Убедитесь, что у Вас установлены Docker Engine и Docker Compose
- Скачайте докер-образ сервера SmartESP VEGA:
$ docker pull smartesp/smartesp-vega:stable
- Запустите ваш докер-контейнер и связанные с ним сервисы в фоновом режиме:
$ docker-compose up -d
- Настройка планировщика задач. Откройте крон-таблицу текущего пользователя командой:
$ crontab -e
и добавьте следующие задания:3 0 * * * /usr/bin/wget -O /dev/null -T 10 -t 1 http://192.168.XXX.XXX/cron/service/master_key/
192.168.XXX.XXX — это IP-адрес Вашего сервера в локальной сети.
* * * * * /usr/bin/wget -O /dev/null -T 59 -t 1 http://192.168.XXX.XXX/cron/auto/master_key/
В случае, если необходимо остановить и обновить или перезапустить контейнер, то это можно сделать следующим образом:$ docker-compose down
$ docker pull smartesp/smartesp-vega:stable
$ docker-compose up -d
После запуска контейнера, требуется некоторое время для создания базы данных, поэтому при открытии сайта, может появляться ошибка Connection refused