Самохостинг (часть 6) - Plex Media Server
1. Введение
Что такое Plex?
Plex — это медиасервер, который помогает организовать вашу коллекцию фильмов, сериалов, музыки и фотографий. Он автоматически загружает метаданные (обложки, описания, актеров) и предоставляет удобный интерфейс для просмотра на любых устройствах. Plex также поддерживает удаленный доступ, что позволяет смотреть ваши медиафайлы из любой точки мира.
2. Подготовка каталогов медиатеки
Прежде чем развертывать Plex, важно правильно организовать вашу медиатеку. Plex требует четкой структуры каталогов для корректной работы.
Создание структуры каталогов
Создайте каталог для медиафайлов:
sudo mkdir -p /opt/media
Внутри этого каталога создайте подкаталоги для фильмов, сериалов и музыки:
sudo mkdir -p /opt/media/movies
sudo mkdir -p /opt/media/shows
sudo mkdir -p /opt/media/music
sudo mkdir -p /opt/media/youtube
Создайте каталог для конфигурации Plex:
sudo mkdir -p /opt/docker/plex/library
Этот каталог будет хранить настройки и метаданные Plex.
Рекомендации по именованию
- Для фильмов:
Используйте структуруНазвание фильма (Год)/Название фильма (Год).mkv
.
Пример:/opt/media/movies/Inception (2010)/Inception (2010).mkv
. - Для сериалов:
Используйте структуруНазвание сериала/Сезон XX/Название сериала SXXEXX.mkv
.
Пример:/opt/media/shows/Game of Thrones/Season 01/Game of Thrones S01E01.mkv
. - Для Youtube можно использовать структуру как для сериалов. Это нам понадобится, когда мы сделаем автоматическое скачивание новых видео с Youtube.
3. Развертывание Plex в Docker
Теперь, когда каталоги подготовлены, перейдем к развертыванию Plex в Docker.
Создание docker-compose.yml
Создайте файл docker-compose.yml
со следующим содержимым:
version: '3.3'
services:
plex:
image: lscr.io/linuxserver/plex:latest
container_name: plex
network_mode: host
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Moscow
- VERSION=docker
- PLEX_CLAIM= #optional
volumes:
- /opt/docker/plex/library:/config
- /opt/media:/media
- /dev/dri:/dev/dri
restart: unless-stopped
Разбор конфигурации
image: lscr.io/linuxserver/plex:latest
: Используется официальный образ Plex от сообщества LinuxServer.network_mode: host
: Контейнер использует сетевой стек хоста для упрощения настройки.PUID
иPGID
: Идентификаторы пользователя и группы, от имени которых работает контейнер. Убедитесь, что они соответствуют вашему пользователю на хосте.TZ=Europe/Moscow
: Устанавливает временную зону.PLEX_CLAIM
: Опциональный параметр для активации сервера. Получите токен на сайте Plex.volumes
:/opt/docker/plex/library:/config
: Хранит конфигурацию Plex./opt/media:/media
: Доступ к медиафайлам./dev/dri:/dev/dri
: Предоставляет доступ к устройствам для аппаратного ускорения.
Запуск контейнера
Выполните команду для запуска контейнера:
docker-compose up -d
Проверьте, что контейнер запущен:
docker ps
4. Настройка Plex
После запуска контейнера перейдите к настройке Plex через веб-интерфейс.
Активация сервера
- Откройте веб-интерфейс Plex по адресу
http://localhost:32400/web
. - Если вы указали
PLEX_CLAIM
, сервер активируется автоматически. В противном случае следуйте инструкциям на экране.
Добавление медиатеки
- Перейдите в раздел Libraries.
- Нажмите Add Library и выберите тип медиа (фильмы, сериалы, музыка).
- Укажите путь к соответствующему каталогу (например,
/media/movies
для фильмов). - Plex начнет сканирование и загрузку метаданных.
Настройка удаленного доступа
- Перейдите в Settings → Remote Access.
- Включите удаленный доступ, если хотите смотреть медиа извне вашей сети.
Оптимизация транскодирования
- Перейдите в Settings → Transcoder.
- Включите аппаратное ускорение, если ваш сервер поддерживает его.
Заключение
Теперь ваш Plex Media Server успешно развернут в Docker и готов к использованию. Вы можете наслаждаться своей медиатекой на любом стационарном устройстве, а благодаря Docker обновления и управление сервером стали проще, чем когда-либо. Если хотите большей мобильности и домашний канал в Интернет это позволяет, то нужно будет купить подписку на Plex или единоразово на всю жизнь.
Если у вас возникнут вопросы, не стесняйтесь задавать их в комментариях!
Полезные ссылки
Удачного стриминга! 🎬