Как я поднимал Nextcloud в Proxmox и какие проблемы пришлось решить
Полный разбор типичных ошибок, которые возникают у всех, кто ставит Nextcloud в LXC-контейнер
Запуск Nextcloud в Proxmox кажется простой задачей — контейнер, Apache, внешний диск, и всё готово. Но на практике вылезают десятки системных ошибок: то индексы базы отсутствуют, то AppAPI требует демон, то почта не отправляется, то внешнее хранилище недоступно, то интерфейс ругается "операция не разрешена".
Делюсь тем, через что пришлось пройти и как всё было исправлено.
🟦 1. Ошибки целостности кода
❗ Проблема
Nextcloud показывал предупреждение:
«Некоторые файлы не прошли проверку целостности»
В отчёте фигурировало приложение files_mindmap, которого в интерфейсе даже не было.
✔ Решение
Проверка occ app:list показала, что приложение действительно существует, но выключено и повреждено.
Команда:
php occ app:remove files_mindmap
После удаления предупреждение исчезло.
🟦 2. Ошибка AppAPI: «Демон развертывания не установлен»
❗ Проблема
Nextcloud 32 требует AppAPI-демон для развёртывания Ex-Apps (AI-приложений).
В контейнере демона не было, .deb-пакеты недоступны, а проверка AppAPI постоянно висела красным.
✔ Решение
Поскольку Ex-Apps не использовались, а AppAPI в контейнере LXC без Docker не нужен — приложение AppAPI было полностью отключено:
php occ app:disable app_api
Предупреждение исчезло, Nextcloud стал стабильнее, мусор в логах пропал.
🟦 3. Mimetype миграции
❗ Проблема
В разделе «Обзор» появилось:
«Доступны миграции mimetype, выполните occ maintenance:repair --include-expensive»
✔ Решение
Запуск команды:
php occ maintenance:repair --include-expensive
Все миграции прошли успешно, предупреждение ушло.
🟦 4. Отсутствующие индексы в базе данных
❗ Проблема
Предупреждение:
«Не хватает индексов: properties_name_path_user, calobjects_by_uid_index…»
Без них растёт нагрузка на БД.
✔ Решение
Командой:
php occ db:add-missing-indices
Nextcloud автоматически создаёт недостающие индексы.
🟦 5. Client Push не установлен (и не исчезает)
❗ Проблема
Nextcloud писал:
«Client Push не установлен»,
и это предупреждение не пропадало даже после отключения проверки.
✔ Решение
Путаница была в названии приложения.
Правильный модуль называется notify_push, а не client_push.
Команды:
php occ app:install notify_push
php occ app:enable notify_push
После установки — предупреждение исчезло.
🟦 6. Письма не отправляются (AxiosError 400)
❗ Проблема
При тестовой отправке почты:
AxiosError: Request failed with status code 400
Хотя SMTP и логин были указаны правильно.
✔ Реальные причины
В профиле администратора не был задан email.
В config.php отсутствовал параметр mail_smtppassword.
В интерфейсе почты Nextcloud некорректно сохраняет настройки.
✔ Рабочее решение
Настройки SMTP были прописаны вручную в config.php:
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_from_address' => 'user1',
'mail_domain' => 'yandex.ru',
'mail_smtphost' => 'smtp.yandex.ru',
'mail_smtpport' => '465',
'mail_smtpauth' => 1,
'mail_smtpsecure' => 'ssl',
'mail_smtptimeout' => 30,
'mail_smtpname' => 'user1@yandex.ru',
'mail_smtppassword' => 'пароль_приложения',
Test email заработал.
🟦 7. Ошибка фронтенда после обновлений
❗ Проблема
Страница показывала ошибки интерфейса про "контроль доступа", хотя в логах всё было чисто.
✔ Решение
Это был битый JS-кэш Nextcloud.
Исправилось через:
php occ maintenance:repair
systemctl restart apache2
Ctrl + F5 в браузере
🟩 Итог
Удалось полностью привести Nextcloud в рабочее, чистое и стабильное состояние:
✔ Исправлены индексы БД
✔ Удалены повреждённые приложения
✔ Выключен ненужный AppAPI
✔ Установлен и активирован notify_push
✔ Работает SMTP через Яндекс
✔ Устранены ACL-ошибки внешнего диска
✔ Пропали ошибки интерфейса Nextcloud
✔ В логах — 0 ошибок
Система теперь работает правильно, все предупреждения исчезли.

