📦 Приложения
Одна из ключевых особенностей YunoHost — возможность легко устанавливать приложения, которые затем сразу же готовы к использованию. Примерами таких приложений могут служить система для ведения блога, «облако» (для размещения и синхронизации файлов), веб-сайт, RSS-читалка и т.д.
Приложения можно устанавливать и управлять ими через веб-интерфейс администратора в Applications или с помощью команд категории yunohost app.

Каталог приложений и его категории можно просматривать непосредственно в веб-панели администратора, нажав кнопку + Install в списке приложений, или из этой документации.
Будьте осторожны и соблюдайте разумные ограничения по количеству устанавливаемых приложений. Каждая дополнительная установка увеличивает поверхность атаки и риск сбоя. В идеале, если вы хотите провести тестирование, делайте это с другим экземпляром, например, в виртуальной машине.
Установка приложения
Допустим, вы хотите установить пользовательское веб-приложение. Перед началом установки YunoHost обычно просит вас заполнить форму для правильной настройки.
- Из веб-интерфейса
- Из командной строки


Подпути против отдельных доменов для каждого приложения
В формах ввода данных, помимо конкретных вопросов, обычно просят выбрать домен и путь, по которому будет доступно приложение.
В контексте YunoHost довольно часто встречается ситуация, когда на одном (или нескольких) доменах в "подпутях" установлено несколько приложений, в результате чего получается что-то вроде этого:
yolo.com
├── /blog : WordPress (a blog)
├── /cloud : Nextcloud (a cloud service)
├── /rss : TinyTiny RSS (a RSS reader)
├── /wiki : DokuWiki (a wiki)
В качестве альтернативы вы можете установить каждое (или некоторые) приложения на выделенном домене. Помимо эстетических соображений, использование поддоменов вместо подпутей позволяет проще перенести службу на другой сервер. Кроме того, некоторым приложениям может потребоваться целый выделенный для них домен по техническим причинам. Недостаток заключается в том, что вам придётся каждый раз добавлять новый домен, а следовательно, потенциально настраивать дополнительные DNS-записи, перезапускать диагностику и устанавливать новый сертификат Let's Encrypt.
Для конечных пользователей это может выглядеть привлекательнее, но в контексте YunoHost это обычно считается более сложным и менее эффективным решением, поскольку каждый раз необходимо добавлять новый домен. Тем не менее, некоторым приложениям по техническим причинам может потребоваться целый выделенный для них домен.
Если бы все приложения из предыдущего примера были установлены в отдельном домене, получилось бы что-то вроде этого:
blog.yolo.com : WordPress (a blog)
cloud.yolo.com : Nextcloud (a cloud service)
rss.yolo.com : TinyTiny RSS (a RSS reader)
wiki.yolo.com : DokuWiki (a wiki)
Многие приложения имеют функцию, позволяющую изменять URL-адрес приложения. В некоторых случаях выбор между подпутём и поддоменом можно отменить с помощью простой манипуляции в административном интерфейсе.
Управление доступом пользователей и общедоступные приложения
В форме установки обычно спрашивается, должно ли приложение быть общедоступным. Если вы решите не делать его общедоступным, доступ к нему смогут получить только пользователи, авторизованные в YunoHost.
После установки это можно настроить через веб-панель администратора в разделе Группы и разрешения (Groups and permissions panel) или аналогичным образом через подкатегорию командной строки yunohost user permission.
Инструкции после установки
Некоторые приложения после установки должны предоставить инструкции, URL-адреса или учётные данные. Поэтому, если вам был предложен такой запрос, не забудьте проверить электронную почту первой учётной записи пользователя или администратора, выбранного перед установкой.
Многоэкземплярные приложения
Некоторые приложения можно устанавливать несколько раз (в разные места)! Для этого просто снова перейдите в раздел Applications → + Install и ещё раз выберите приложение для установки.
Интеграция с LDAP / SSO
Приложения, поддерживающие регистрацию пользователей, могут быть интегрированы с системой LDAP / Single Sign-On (единого входа) YunoHost, благодаря чему пользователи, входящие на пользовательский портал, могут автоматически авторизоваться во всех этих приложениях.
Однако некоторые приложения не поддерживают эту возможность, поскольку она либо не реализована в исходном проекте (upstream), либо соответствующая функция пакета пока не работает. Обычно эта информация приводится в файле README пакета приложения.
Конфигурация приложения
После установки можно скорректировать некоторые настройки, управляемые YunoHost, — например, права доступа пользователей и групп, вид плитки и название приложения на странице SSO или URL для доступа к нему.
- Из веб-интерфейса
- Из командной строки
Вы можете перейти на страницу операций приложения, нажав на его название в списке приложений.

Вы также можете удалить приложение с этой страницы.
Из командной строки можно изменить:
- название приложения в SSO:
yunohost app change-label <app> <new_label> - URL-адрес приложения:
yunohost app change-url app [-d <DOMAIN>] [-p <PATH>]
Вы также можете удалить приложение: yunohost app remove <app>
<app>следует заменить на идентификатор приложения. Если это первый экземпляр приложения (например, Nextcloud), идентификатор будет иметь вид nextcloud. Если второй — nextcloud__2 и так далее. Чтобы просмотреть список всех установленных приложений и узнать их идентификаторы, можно выполнить команду yunohost app info.
Панели настройки
Некоторые приложения оснащены панелью настройки, содержащей специфические для каждого из них действия и параметры, которыми они обычно не управляют самостоятельно. Кроме того, такие панели избавляют от необходимости вручную редактировать файлы конфигурации.
Панели настройки не предназначены для тонкой настройки абсолютно всех аспектов приложений. Безусловно, вам придётся чаще пользоваться собственными панелями администрирования этих приложений, чем панелями настройки YunoHost.
- Из веб-интерфейса
- Из командной строки
Панели настройки доступны в веб-интерфейсе администратора на странице операций — через кнопку Config panel (Панель настройки).

Из командной строки можно вывести список настроек панели конфигурации с помощью следующей команды: yunohost app config get <app>
$ yunohost app config get my_webapp
main.php_fpm_config.phpversion:
ask: PHP version
value: none
main.sftp.password:
ask: Set a password for the SFTP access
value: **************
main.sftp.with_sftp:
ask: Do you need a SFTP access?
value: yes
Чтобы изменить настройку, либо воспользуйтесь командой yunohost app config set <app>, чтобы система предложила изменить все параметры по очереди, либо используйте yunohost app config set <app> <key> -v <new_value> для изменения конкретного параметра.
<key> — это имя настройки, например main.sftp.with_sftp из примера выше.
Выполнение команд в приложении
Начиная с версии YunoHost v11.1.21.4, если вам необходимо выполнить команды с помощью исполняемого файла приложения, команды PHP и т. д., вы можете выполнить команду yunohost app shell <app>.
Это приведёт к следующему:
- откройте новую оболочку Bash от имени системного пользователя приложения
- перейдите в рабочую директорию приложения (например,
/var/www/<app>) - предварительно загрузите переменные окружения из конфигурации службы приложения (если она существует)
- переопределите команду
phpтак, чтобы она указывала на версию PHP, используемую приложением
Упаковка приложений
Пакеты приложений должны создаваться вручную специалистами по их упаковке и сопровождению. Приложения могут быть интегрированы с YunoHost, что обеспечивает поддержку таких функций, как обновление, резервное копирование и восстановление, а также интеграция с LDAP/SSO.
Если вы хотите научиться упаковывать приложения или внести свой вклад в этот процесс, пожалуйста, ознакомьтесь с документацией для участников.
Уровни интеграции и качества
Регулярно проводятся автоматические тесты для проверки интеграции и качества всех приложений, которые были заявлены упаковщиками как «рабочие» (working). Результат представляет собой показатель от 0 до 8; его значение подробно описано на этой странице. Результаты некоторых тестов также можно посмотреть на этой информационной панели.
По умолчанию предлагаются только приложения надлежащего качества. Если качество приложения снижается, оно скрывается из каталога (чтобы предотвратить его установку), а выпуск обновлений для него приостанавливается до тех пор, пока проблема не будет устранена.