Перейти к содержанию
Форум Радиодар

Рекомендуемые сообщения

Опубликовано

С сентября 2024 года прошло полгода и уже вышла новая версия.

Список изменений можно почитать: ТУТ

Установлена версия: 6.2.1

Новая версия: 7.1.0

Для обновления необходимо запустить скрипт:

cd /var/www/peertube/peertube-latest/scripts && sudo -H -u peertube ./upgrade.sh
sudo systemctl restart peertube # Or use your OS command to restart PeerTube if you don't use systemd

На запрос системы укажите пароль от базы данных.

  • 3 месяца спустя...
  • 6 месяцев спустя...
  • 3 месяца спустя...
Опубликовано

При обновлении peertube версии ниже 8.1 на более высокую необходимо провести ряд действий, включая пересборку базы.

Для этого (напоминаю, если версия <8.1):

1) Перейти на pnpm:

sudo corepack enable
corepack prepare pnpm@latest --activate

2)  Установите зависимости для sharp (требуются для сборки нативных модулей обработки изображений, необходимо удалить yarn если ругается, примечание к действию в п.3😞

sudo apt update
sudo apt install build-essential libvips-dev

Если у вас выдало ошибку типа:

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 62D54FD4003F6525
Fetched 72.0 kB in 1s (68.0 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
2 packages can be upgraded. Run 'apt list --upgradable' to see them.
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://dl.yarnpkg.com/debian stable InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 62D54FD4003F6525
W: Failed to fetch https://dl.yarnpkg.com/debian/dists/stable/InRelease  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 62D54FD4003F6525
W: Some index files failed to download. They have been ignored, or old ones used instead.

то необходимо удалить Yarn - в любом случае Peertube перешли на менеджер паркетов pnpm.

3) Удаляем yarn:

sudo rm -f /etc/apt/sources.list.d/yarn.list
sudo rm -f /etc/apt/trusted.gpg.d/yarn.gpg
sudo rm -f /usr/share/keyrings/yarn-keyring.gpg

и затем из пункта №1 повторим команду:

sudo apt update
sudo apt install build-essential libvips-dev

4) Переходим в основную папку Peertube и выполняем штатный скрипт обновления - система самостоятельно загрузит новую версию и установит зависимости через pnpm:

cd /var/www/peertube/peertube-latest/scripts
sudo -H -u peertube ./upgrade.sh

5) Сверяем файлы конфигураций. После обновления версии peertube для применения новых параметров требуется обновить конфигурации продакшена и сервисов. Применим diff для сравнения текущего и эталонного файлов из новой версии:

cd /var/www/peertube/versions

# Сверка основного конфига PeerTube
diff -u "$(ls --sort=t | head -2 | tail -1)/config/production.yaml.example" "$(ls --sort=t | head -1)/config/production.yaml.example"

# Сверка конфига Nginx (если вы проксируете через него)
diff -u "$(ls --sort=t | head -2 | tail -1)/support/nginx/peertube" "$(ls --sort=t | head -1)/support/nginx/peertube"

Примечание: необходимо перекинуть основные изменения в файл /var/www/peertube/config/production.yaml . У себя добавил:

5.1 Размеры миниатюр: 

Эти параметры обеспечивают корректную работу новых механизмов версии 8.1. Без них могут не генерироваться миниатюры или не запускаться обработка видео.

1. Размеры миниатюр (thumbnails.sizes)
В версии 7.2.1 было всего 2 размера. В 8.1 их стало больше, и это влияет на генерацию превьюшек.

  • Что делаем: Находим в вашем production.yaml блок thumbnails: и заменяем его блок sizes полностью на новый (с 4 размерами + квадратный для подкастов).

  • Как должно выглядеть у вас после правки:

thumbnails:
  # ... (frames_to_analyze оставляем как есть)
  sizes:
    -
      width: 280
      height: 157
      aspect_ratio: '16:9'
    -
      width: 850
      height: 480
      aspect_ratio: '16:9'
    -
      width: 1280
      height: 720
      aspect_ratio: '16:9'
    -
      width: 1920
      height: 1080
      aspect_ratio: '16:9'
    -
      width: 1400
      height: 1400
      aspect_ratio: '1:1'

5.2 Время ожидания HTTP (http_timeouts)
Новый обязательный параметр.

Что делаем: Добавляем в начало вашего файла (например, после блока secrets) следующий блок:

http_timeouts:
  request: '5 minutes'

5.3 

Путь для Uploads (storage.uploads)
В новой версии появилась отдельная папка для загрузок.

  • Что делаем: В вашем блоке storage: добавляем строку:

storage:
  # ... остальные пути
  well_known: '/var/www/peertube/storage/well-known/'
  uploads: '/var/www/peertube/storage/uploads/' # <-- ЭТУ СТРОКУ ДОБАВИТЬ

Категория 2: РЕКОМЕНДУЕТСЯ ДОБАВИТЬ — Новые фичи и стабильность

Эти параметры либо включают новые функции (например, ограничение импорта), либо улучшают производительность БД. Если не добавите, ничего не сломается, но лучше иметь.

4. Очистка старых просмотров (views.videos.local)
Новый механизм контроля роста базы данных.

  • Что делаем: В блоке views: -> videos: после секции remote: добавляем:

local:
  max_age: -1  # -1 значит "не удалять"

Ограничения для импорта (import.videos.max_attempts)

  • Где искать/добавлять: В блоке import: -> videos: (не перепутайте с http).

  • Добавить строку:

max_attempts: 5

Настройка кастомного логотипа в хедере (client.header.hide_instance_name)
Полезно, если у вас свой логотип.

  • Что делаем: Добавляем блок client: (если его нет) и подблок header::

client:
  new_features_info: true
  header:
    hide_instance_name: false

Это все изменения которые были внесены в основной файл.

6. Перезапускаем сервисы и осуществляем первый запуск новой версии:

Перезагрузите демон systemd и запустите PeerTube, чтобы применились новые схемы базы данных

sudo systemctl daemon-reload
sudo systemctl restart peertube

ВНИМАНИЕ: Критически важно: После рестарта дождитесь полного завершения миграций баз данных. Это может занять некоторое время. Отслеживайте статус командой:

sudo journalctl -fu peertube

Убедитесь, что в логах появилась строка Migrations finished. New migration version schema: 1000 (или аналогичная). 

Не выполняйте следующий шаг, пока миграция не завершится полностью!!!

Если вы упустили в логах окончание миграции, можно отправить команду на поиск необходимого окончания в логах (у меня это было на следующий день):

sudo journalctl -u peertube --no-pager | grep -i "migration"

Эта команда выводит содержимое лога по миграции - ищем Migrations finished. New migration version schema:  и только после этого переходим дальше!

Шаг 7: 

 Запуск обязательных миграционных скриптов (Особенность 8.1)

Главное отличие обновления на 8.1 — необходимость вручную запустить скрипты миграции данных после того, как PeerTube запущен и БД обновлена .

  1. Выполните миграцию версии 8.0 (если вы перепрыгиваете через несколько версий):

cd /var/www/peertube/peertube-latest
sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-8.0.js

2. Выполните миграцию версии 8.1 (переносит папку previews в thumbnails и другие структуры)

sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-8.1.js

Шаг 8: 

Пост-обработка и регенерация миниатюр

В версии 8.1 произошли серьезные изменения в системе хранения изображений (previews объединены с thumbnails). Чтобы избежать проблемы с «пропавшими обложками» видео, необходимо перегенерировать миниатюры и очистить хранилище:

cd /var/www/peertube/peertube-latest
sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run regenerate-thumbnails
sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run prune-storage

ШАГ 9: 

Перезагрузка окружения

На всякий случай перезапустите сервисы еще раз, чтобы все новые пути и кеш применились корректно:

sudo systemctl restart peertube
sudo systemctl reload nginx

======================================

Итого имеем: полностью обновленные системы на последнюю по состоянию на апрель 2026 года версию:

image.png

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Статистика пользователей

    478
    Пользователей
    681
    Максимум онлайн
    Funtik333
    Новый пользователь
    Funtik333
    Регистрация
×
×
  • Создать...