Files
knowledge-base/claude-memory/nextcloud-dttb.md
2026-04-19 12:00:42 +00:00

5.7 KiB
Raw Blame History

Nextcloud AIO dttb.ru (VM 250, 10.0.0.230)

Общее

  • URL: https://dttb.ru, login: admin / 1qaz!QAZ
  • WebDAV: https://dttb.ru/remote.php/dav/files/admin/
  • Nextcloud AIO v12.6.1, Nextcloud 32.0.6
  • VM 250 на Proxmox HomeLab (10.0.0.250)
  • 4 sockets x 2 cores = 8 vCPU, 16GB RAM, 100GB disk (65% used)
  • Ubuntu, cloud-init, QEMU guest agent НЕ установлен
  • SSH: cloud / 1qaz!QAZ (sudo через echo pipe: echo '1qaz!QAZ' | sudo -S ...)
  • SSH root НЕ работает, ключ НЕ настроен
  • Для SSH через sshpass нужно: -o PreferredAuthentications=password (иначе fail)

AIO Management

  • URL: https://10.0.0.230:8080 (HTTPS обязательно)
  • Passphrase: raider baguette muster nanometer disallow hypnotism rut dreamless
  • AIO_TOKEN: 7e40792bc68c4ce81d0588a89fa883fed1ab2b3347a1781c
  • AIO_URL: 10.0.0.230:8080 (исправлено 2026-03-07, было localhost:8080)
  • Патч isLoginAllowed(): return true (позволяет логин по IP при работающем NC)
    • Файл: /var/www/docker-aio/php/src/Docker/DockerActionManager.php
    • ВНИМАНИЕ: патч сбрасывается при обновлении mastercontainer
  • Конфиг: /mnt/docker-aio-config/data/configuration.json (внутри mastercontainer)
    • Также: /var/lib/docker/volumes/nextcloud_aio_mastercontainer/_data/data/configuration.json (на хосте)

NPM proxy

Docker контейнеры

  • nextcloud-aio-mastercontainer (порты 80, 8080, 8443, 9000)
  • nextcloud-aio-apache (порт 11001)
  • nextcloud-aio-nextcloud
  • nextcloud-aio-database (PostgreSQL)
  • nextcloud-aio-redis
  • nextcloud-aio-onlyoffice
  • nextcloud-aio-imaginary
  • nextcloud-aio-whiteboard
  • nextcloud-aio-notify-push
  • nextcloud-aio-talk (порт 3479)
  • nextcloud-aio-talk-recording
  • nextcloud-aio-watchtower

Конфигурация (из configuration.json)

  • domain: dttb.ru
  • apache_port: 11001
  • talk_port: 3479
  • nextcloud_datadir: /mnt/ncdata
  • nextcloud_mount: /mnt/
  • upload_limit: 16G
  • memory_limit: 2048M
  • max_time: 3600
  • isOnlyofficeEnabled: true
  • isImaginaryEnabled: true
  • isWhiteboardEnabled: true
  • isTalkEnabled: false (Talk отключен в AIO, но контейнер talk работает — legacy?)
  • isCollaboraEnabled: false
  • isClamavEnabled: false

Секреты

  • NEXTCLOUD_PASSWORD: 5752c16a373b465100050053e8c5805d0b40bcc20a28f59d
  • ONLYOFFICE_SECRET: 84b288f6182489c3a39d109c39e11c320f610c2c9d9d3da6
  • TURN_SECRET: c86fd98e4db4cba78c8b512d570d91993cc36ee999e59868
  • REDIS_PASSWORD: df04c3de5d838cb263b82489d12864ec146a4389ac43227e
  • DATABASE_PASSWORD: 9410ae9648674eff97f37108f770e9e63dc2136964af3f33
  • BORGBACKUP_PASSWORD: 666fbf2cd2fb7633f34369a4736bfdb0b7280aef82648d94

Почта (2026-03-07)

  • Системная почта: support@dttb.ru через mail.dttb.ru:587 STARTTLS
  • Mail app: аккаунт support@dttb.ru (IMAP mail.dttb.ru:993 SSL, SMTP mail.dttb.ru:587 STARTTLS)
  • SSL: LE-сертификат скопирован с NPM (cert ID:106) на Mailcow
  • Cron: /opt/sync-le-cert.sh на Mailcow — ежедневно 04:00 синхронизирует LE cert с NPM
  • DNS override: mail.dttb.ru → 10.0.0.107 на OpenWrt (dnsmasq domain record)
  • app.mail.verify-tls-peer=true (LE cert валидный)

Home Assistant интеграция (2026-03-07)

  • Приложение: integration_homeassistant v0.0.7
  • HA URL: http://10.0.0.155:8123 (VM 127, haos-17.0)
  • HA user: dttb / 1qaz!QAZ
  • Long-Lived Access Token (365 дней, имя "Nextcloud Integration"): eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiI3OTgyNzZmZGE3OWM0ODgxYWU1ZGJjMWMwYTNhOWM0ZiIsImlhdCI6MTc3Mjg4OTQ4NywiZXhwIjoxODA0NDI1NDg3fQ.c_6wHfui9YJEtUJoJwbHsMnBzHET-pjEPSWqrthcH18
  • Виджет "Умный дом" (Jinja2 template, обновление 60 сек): погода, присутствие, iPhone батарея/локация, восход/закат, NC статистика (диск/RAM/CPU/онлайн)
  • Виджет "Устройства" (YAML, WebSocket real-time): медиаплееры (Спальня, VLC), камеры PVZ (6 датчиков движения), NC бинарные сенсоры
  • 170 сущностей в HA: 70 sensors, 24 cameras, 39 device_trackers, 14 binary_sensors, 2 media_players, 1 weather
  • NPM proxy: home.dttb.ru → http://10.0.0.155:8123 (proxy host #16)

Troubleshooting (2026-03-07)

  • Контейнеры остановились при обновлении, OnlyOffice был удалён
  • Nextcloud зависал на "Waiting for OnlyOffice to become available..."
  • Решение: через AIO API включить OnlyOffice, затем Stop+Start через AIO
  • AIO login блокируется при работающем Apache — патч isLoginAllowed() или docker stop apache
  • AIO_URL передаётся как env при создании контейнера — для обновления нужен Stop+Start через AIO
  • spreed (Talk) удаляется при перезапуске если isTalkEnabled=false

SSH команды (шаблоны)

# SSH подключение
sshpass -p '1qaz!QAZ' ssh -o StrictHostKeyChecking=no -o PreferredAuthentications=password cloud@10.0.0.230

# Docker через sudo
python3 << 'PYEOF'
import subprocess
cmd = ['sshpass', '-p', '1qaz!QAZ', 'ssh', '-o', 'StrictHostKeyChecking=no', '-o', 'PreferredAuthentications=password', 'cloud@10.0.0.230']
commands = "echo '1qaz!QAZ' | sudo -S docker ps -a --format '{{.Names}} | {{.Status}}' 2>&1 | grep -v 'пароль для'"
result = subprocess.run(cmd + [commands], capture_output=True, text=True, timeout=15)
print(result.stdout)
PYEOF