Почему Nextcloud? Nextcloud предоставляет личное пространство для хранения, синхронизации и совместного использования файлов с нескольких устройств через веб-интерфейс и выделенные клиенты.
Почему самостоятельный хостинг? Он позволяет сохранить контроль над местом хранения, циклом обновлений и правилами доступа. Взамен приходится самостоятельно обеспечивать доступность, усиление защиты, объём диска, резервное копирование и тестирование восстановления.
🧩 Реализованная архитектура
  • Выделенная ВМ Ubuntu 24.04 для сервиса (VM205)
  • Docker-контейнер для приложения Nextcloud
  • Отдельный Docker-контейнер для MariaDB
  • Два тома Docker, разделяющие файлы приложения и базу данных
  • Автозапуск ВМ после приоритетных сервисов, затем восстановление обоих контейнеров
  • Публикация по HTTPS за общим обратным прокси (VM200)
🎯 Применённые компетенции
  • Эксплуатация самостоятельно размещённого приложения в ВМ Proxmox
  • Разделение приложений Nextcloud / MariaDB
  • Устойчивость данных через тома Docker
  • Комплексная диагностика: systemd · Docker · HTTP · инструмент occ
  • Построение воспроизводимого и очищенного доказательства после перезагрузки
🌐 Проверенная публикация по HTTPS

Nextcloud доступен по адресу nextcloud.stephanemuraro.fr. Сервис сохраняет собственную аутентификацию, а обратный прокси (VM200) централизует терминацию TLS и перенаправляет запросы на прикладную ВМ.

Проверено из внешней сети:
  • установление HTTPS-соединения
  • аутентификация
  • просмотр файлов
  • загрузка файла через веб-интерфейс
  • синхронизация через настольный клиент
Предварительная диагностика выявила два неисправных расширения приложения, обратимо нейтрализованных для восстановления интерфейса, а затем записи данных, без удаления самих данных.
🔄 Воспроизводимое доказательство — состояние после перезагрузки

Выполняемые внутри ВМ, эти команды автоматически определяют имя контейнера и опубликованный локальный порт — поэтому доказательство не зависит от меток, специфичных для конкретной установки.

bash — проверка состояния
date --iso-8601=seconds
systemctl is-system-running
systemctl --failed --no-pager

nextcloud_container=$(
  sudo docker ps --filter ancestor=nextcloud --format '{{.Names}}' | head -n 1
)
nextcloud_port=$(
  sudo docker port "$nextcloud_container" 80/tcp | awk -F: 'NR == 1 {print $NF}'
)

sudo docker ps --format \
  'table {{.Image}}\t{{.Status}}' | awk 'NR == 1 || /nextcloud|mariadb/'
sudo docker exec -u www-data "$nextcloud_container" php occ status
curl -fsS "http://127.0.0.1:${nextcloud_port}/status.php"
очищенный фрагмент — проверка после перезагрузки хоста
Horodatage : 2026-08-15T07:51:40+00:00
État système : running
Unités systemd en échec : 0

nextcloud   Up About an hour
mariadb     Up About an hour

installed: true
versionstring: 33.0.0
maintenance: false
needsDbUpgrade: false
productname: Nextcloud
Как читать: occ status и HTTP-эндпоинт состояния подтверждают, что Nextcloud 33.0.0 установлен, находится вне режима обслуживания и не имеет ожидающих миграций базы данных. Одновременное наличие контейнеров Nextcloud и MariaDB после перезагрузки демонстрирует их автоматическое восстановление.
Ограничения и открытые задачи:

Связанные страницы

Ссылки и источники

КатегорияРесурсURL
Официальная документацияNextcloud — Documentationdocs.nextcloud.com
Официальная документацияMariaDB — Documentationmariadb.org/documentation
Проверенная версияNextcloud 33.0.0 · VM Ubuntu 24.04 · Docker (app + MariaDB)—
ЛицензияNextcloud — AGPLv3 · MariaDB — GPLv2gnu.org/licenses/agpl-3.0
Содержимое этой страницыПубликуется под CC BY-SA 4.0creativecommons.org/licenses/by-sa/4.0