Конфигурация
Программа Eonza не требует установки и распространяется в виде единственного запускаемого файла. При первом запуске она создает все необходимые директории и файлы.
- log - директория для хранения лога программы и запускаемых скриптов.
- users - директория для хранения пользовательских настроек.
- eonza(.exe) - программа Eonza.
- eonza.eox - двоичный файл с данными. Он содержит создаваемые пользователем скрипты и общие настройки.
- eonza.yaml - файл конфигурации.
- eonza.eon - двоичный файл с уведомлениями и прочей служебной информацией. Удаление этого файла не влияет на работоспособность программы.
Файл конфигурации
Главные настройки программы вынесены в YAML файл конфигурации eonza.yaml. Ниже представлен пример файла конфигурации, который создается по умолчанию.
1mode: default 2assetsdir: "" 3packagesdir: "" 4log: 5 dir: "" 6 mode: file 7 level: info 8users: 9 dir: "" 10http: 11 host: localhost 12 port: 3234 13 open: true 14 theme: default 15 jwtkey: s5c82473epey 16playground: 17 dir: "" 18 summary: 0 19 files: 0 20 size: 0 21whitelist: []
- mode - режим работы программы. Если не указан, то программа будет работать в режиме по умолчанию. Возможны следующие варианты:
- default - режим по умолчанию.
- develop - режим разработчика.
- playground - режим безопасной "песочницы".
- assetsdir - по умолчанию, файлы для фронтенда (html, js, png) упакованы в исполняемый файл. Вы можете указать директорию к этим файлам в распакованном виде. Это позволяет использовать модифицированные версии файлов.
- packagesdir - директория для установки пакетов. Каждый пакет устанавливается в отдельную поддиректорию.
- whitelist - если вы установили Eonza на удаленном сервере (хостинге), то мы рекомендуем указать "белый список" ip-адресов в дополнении к защите по паролю. В этом параметре укажите массив подсетей, откуда возможно подключение к программе. Если запрос к Eonza придёт от ip-адреса, который не входит ни в одну из указанных сетей, то будет отправлена ошибка - Доступ запрещен. При определении "белого списка" обязательно добавьте в него следующие подсети: ::1/128, 127.0.0.0/31.
1whitelist: 2 - ::1/128 3 - 127.0.0.0/31 4 - 192.168.0.0/24
Раздел логирования
- dir - путь к директории с лог-файлами. Если равна пустой строке, то используется поддиректория log в директории с файлом конфигурации.
- mode - тип логирования. Может быть комбинацией file и/или stdout. Если не указан, то логирование отключено. Например, mode: file stdout.
- level - уровень логирования. Может быть disable, error, warn, info.
Раздел пользователей
- dir - путь к директории с данными пользователей. Если равна пустой строке, то используется поддиректория users в директории с файлом конфигурации.
HTTP настройки
Eonza запускает веб-сервер для отображения программы в браузере. Здесь перечислены настройки относящиеся к работе веб-сервера.
- host - имя хоста (домена) по которому можно получить доступ к Eonza. По умолчанию, равен localhost. Если вы устанавливайте Eonza на хостинге, то укажите имя домена. В этом случае, следует установить пароль, указать параметры cert и priv. Также рекомендуется определить "белый список" IP-адресов для доступа.
- port - порт, который использует веб-сервер. По умолчанию, 3234.
- localport - порт для системного localhost сервера. Если не указан или равен 0, то используется port + 1.
- open - укажите false, если вы не хотите автоматически открывать вкладку в браузере при запуске программы. Игнорируется, если host не равен localhost.
- theme - зарезервировано.
- jwtkey - секретный ключ для создания JWT токенов авторизации. Он необходим в том случае, если вы используйте пароль. Ключ генерируется автоматически при создании файла конфигурации, но вы в дальнейшем можете изменить его.
Eсли host не равен localhost, то в этом случае используется только https соединение. Поэтому вы должны указать полный путь к SSL сертификату и приватному ключу.
- cert - SSL сертификат.
- priv - приватный ключ.
1http: 2 host: www.eonza.org 3 port: 3234 4 theme: default 5 jwtkey: s5c82473epey 6 cert: "/etc/letsencrypt/live/eonza.org/fullchain.pem" 7 priv: "/etc/letsencrypt/live/eonza.org/privkey.pem"
Настройки режима "песочницы"
Если вы указали режим работы программы playground, то вы можете определить следующие дополнительные настройки для данного режима.
- dir - путь к директории для записи и чтения файлов. Если не указан, то будет будет создана поддиректория во временной директории.
- summary - суммарный размер файлов. По умолчанию, 10 MB.
- files - максимальное количество файлов. По умолчанию, 100.
- size - максимальный размер файла. По умолчанию, 5 MB.
- tasks - максимальное количество одновременно работающих скриптов. По умолчанию, 2.
1mode: playground 2... 3playground: 4 dir: "/tmp/eonza/playground" 5 summary: 20000000 6 files: 250 7 size: 3000000 8 tasks: 3