Поиск по сайту:

Как установить Streama на CentOS 7


На этой странице

  1. Шаг 1. Установка Streama

Streama — это бесплатное приложение для потоковой передачи мультимедиа с открытым исходным кодом. Это собственная альтернатива Netflix. Он имеет множество функций, таких как простое управление мультимедиа с помощью перетаскивания, красивый медиаплеер, просмотр с синхронизацией в реальном времени, многопользовательский режим, субтитры, возможность возобновления и т. д.

В этом руководстве мы установим Streama на сервер CentOS 7. gpt-ad-howtoforge_com-medrectangle-3-0;var ffid=1;var alS=1021%1000;var container=document.getElementById(slotId);container.style.width=100%;var ins=document.createElement( ins);ins.id=slotId+-asloaded;ins.className=adsbygoogle ezasloaded;ins.dataset.adClient=pid;ins.dataset.adChannel=cid;if(ffid==2){ins.dataset.fullWidthResponsive=true; }

Предпосылка

  • Минимальный сервер CentOS 7
  • Привилегии root

Шаг 1 - Установка Streama

Рекомендуется обновить сервер перед установкой любого пакета, чтобы обновить существующие пакеты и репозитории.

yum -y update

Вы можете установить Streama как на OpenJDK, так и на Oracle JAVA. В этом руководстве мы установим последнюю версию Oracle Java на сервер. Выполните следующую команду для того же.

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

Если у вас не установлен wget, вы можете запустить yum -y install wget, чтобы установить wget. Теперь установите загруженный RPM с помощью следующей команды.

yum -y localinstall jdk-8u131-linux-x64.rpm

Вы можете запустить следующую команду, чтобы убедиться, что Java установлена или нет.

java -version

Приведенная выше команда напечатает версию JAVA, которую вы установили. Вы должны получить аналогичный результат, как показано ниже.

[ ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

Теперь, когда мы успешно установили Java, мы можем загрузить пакет Streama War по следующей ссылке.

wget https://github.com/dularion/streama/releases/download/v1.1/streama-1.1.war

Пакет War или веб-архив содержит все файлы веб-проекта. Вы всегда можете проверить наличие ссылки на последнюю версию Streama, используя страницу загрузки Streama.

Переименуйте военный файл и переместите его в безопасное место, используя следующие команды.

mkdir /opt/streama
mv streama-1.1.war /opt/streama/streama.war

Теперь вы можете сразу запустить приложение, выполнив следующую команду.

java -jar /opt/streama/streama.war

Нажмите Ctrl + C, чтобы остановить выполнение. Создайте новый каталог для хранения медиафайлов, загруженных в Streama, набрав:

mkdir /opt/streama/media

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

chmod 664 /opt/streama/media

Теперь, когда у нас есть готовая среда, мы можем создать службу systemd для запуска сервера Streama. Запуск Streama как службы гарантирует, что сервер работает в фоновом режиме. Он будет автоматически запускаться при перезагрузке системы и сбоях процесса. Чтобы создать новый файл службы systemd, введите:

nano /etc/systemd/system/streama.service

Теперь добавьте следующие строки в текстовый файл.

[Unit]
Description=Streama Server
After=syslog.target
After=network.target

[Service]
User=root
Type=simple
ExecStart=/bin/java -jar /opt/streama/streama.war
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Streama

[Install]
WantedBy=multi-user.target

Сохраните файл и выйдите из редактора. Теперь вы можете запустить сервер Streama напрямую, используя следующую команду.

systemctl start streama

Чтобы приложение запускалось автоматически во время загрузки, выполните следующую команду.

systemctl enable streama

Чтобы проверить состояние службы, выполните следующую команду.

systemctl status streama

Скорее всего, вы увидите следующий вывод.

[ ~]# systemctl status streama
? streama.service - Streama Server
Loaded: loaded (/etc/systemd/system/streama.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2017-06-22 19:02:32 UTC; 19s ago
Main PID: 20053 (java)
CGroup: /system.slice/streama.service
??20053 /bin/java -jar /opt/streama/streama.war

Jun 22 19:02:32 ip-172-31-0-204 systemd[1]: Started Streama Server.
Jun 22 19:02:32 ip-172-31-0-204 systemd[1]: Starting Streama Server...
Jun 22 19:02:37 ip-172-31-0-204 Streama[20053]: INFO streama.Application - Starting Application on ip-172-31-0-204...in /)
Jun 22 19:02:37 ip-172-31-0-204 Streama[20053]: DEBUG streama.Application - Running with Spring Boot v1.3.8.RELEAS...LEASE
Jun 22 19:02:37 ip-172-31-0-204 Streama[20053]: INFO streama.Application - The following profiles are active: production
Jun 22 19:02:47 ip-172-31-0-204 Streama[20053]: Configuring Spring Security Core ...
Jun 22 19:02:48 ip-172-31-0-204 Streama[20053]: ... finished configuring Spring Security Core
Hint: Some lines were ellipsized, use -l to show in full.

По умолчанию Streama будет работать на порту 8080. Мы можем создать обратный прокси-сервер с Apache, чтобы приложение Streama работало на порту 8080, но Apache прослушивал порты 80 и 443, которые являются портами HTTP и HTTPS по умолчанию. Мы также защитим соединение с сервером с помощью бесплатного SSL от Let’s Encrypt. Установите веб-сервер Apache и mod_ssl, используя следующую команду.

yum -y install httpd mod_ssl

Теперь запустите веб-сервер Apache и включите его автоматический запуск во время загрузки, используя следующие команды.

systemctl start httpd
systemctl enable httpd

Теперь нам нужно будет сгенерировать SSL-сертификаты из клиента Let’s Encrypt. Certbot, который является клиентом сертификата Let’s Encrypt, недоступен в репозитории YUM по умолчанию. Для этого вам нужно будет установить репозиторий EPEL. Чтобы установить EPEL, введите:

yum -y install epel-release
yum -y update

Теперь установите Certbot, используя следующую команду.

yum -y install python-certbot-apache

После завершения установки выполните приведенную ниже команду, чтобы получить только сертификаты. Клиент Let’s Encrypt проверяет полномочия домена перед предоставлением сертификатов. Следовательно, убедитесь, что ваш домен указывает на IP-адрес сервера.

certbot certonly --apache -d streama.yourdomain.com

Приведенная выше команда запустит утилиту Certbot только для получения сертификатов. Certbot не будет устанавливать сертификаты и не будет изменять конфигурацию сервера. Он может спросить вас, какую конфигурацию SSL использовать во время аутентификации, выберите ssl.conf. Наконец, укажите свой адрес электронной почты и примите условия. После создания сертификатов они, скорее всего, будут храниться в следующем каталоге.

/etc/letsencrypt/live/streama.yourdomain.com

Где streama.yourdomain.com — ваш фактический домен. В каталоге вы найдете cert.pem, который является SSL-сертификатом вашего домена, и privkey.pem, который является закрытым ключом вашего SSL-сертификата.

Срок действия Let’s Encrypt SSL истекает через 90 дней, поэтому рекомендуется установить автоматическое продление для ваших сертификатов. Выполните следующую команду, чтобы открыть файл crontab.

crontab -e
Enter the following line into the crontab file.
30 1 * * 1 /usr/bin/certbot renew >> /var/log/le-renew.log

Вышеупомянутое задание cron будет автоматически запускаться каждый понедельник в 1:30, и если срок действия ваших сертификатов истекает, он будет автоматически обновлять их.

Теперь, когда наши SSL-сертификаты сгенерированы, приступайте к созданию нового виртуального хоста для вашего приложения. Введите следующую команду, чтобы создать новый виртуальный хост.

nano /etc/httpd/conf.d/streama.yourdomain.com.conf

Замените streama.yourdomain.com вашим фактическим доменом. Добавьте в файл следующие строки.

<VirtualHost *:80>
    ServerName streama.yourdomain.com
    Redirect permanent / https://streama.yourdomain.com/
    TransferLog /var/log/httpd/streama.yourdomain.com_access.log
    ErrorLog /var/log/httpd/streama.yourdomain.com_error.log
</VirtualHost>

<VirtualHost *:443>
    ServerName streama.yourdomain.com
    ServerAdmin 
    SSLEngine On
    SSLCertificateFile /etc/letsencrypt/live/streama.yourdomain.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/streama.yourdomain.com/privkey.pem
    ProxyPreserveHost On
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/
    TransferLog /var/log/httpd/streama.yourdomain.com_ssl_access.log
    ErrorLog /var/log/httpd/streama.yourdomain.com_ssl_error.log
</VirtualHost>

В приведенной выше конфигурации измените streama.yourdomain.com на ваш фактический домен. Вам также необходимо убедиться, что путь к SSL-сертификатам указан правильно. Если в конфигурации есть какая-либо ошибка, веб-сервер Apache не запустится.

После этого перезапустите веб-сервер Apache, чтобы изменения, внесенные в конфигурацию, вступили в силу.

systemctl restart httpd

Кроме того, вам также необходимо отключить SELinux. Чтобы временно отключить SELinux без перезапуска сервера, выполните следующую команду.

setenforce 0

Чтобы полностью отключить SELinux, вам нужно отредактировать файл /etc/selinux/config.

nano /etc/selinux/config

Найдите следующую строку:

SELINUX=enforcing

Измените его на:

SELINUX=disabled

Новая конфигурация вступит в силу после перезагрузки сервера. Теперь вы можете запустить службу Streama, если она не запущена, с помощью следующей команды.

systemctl start streama

Настройте брандмауэр, чтобы разрешить порты 80 и 443, используя следующие команды.

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Теперь вы можете просмотреть следующий URL-адрес в своем любимом браузере.

https://streama.yourdomain.com

Вы увидите следующий интерфейс входа. Войдите, используя логин admin и пароль admin.

При первом успешном входе в систему вам потребуется настроить несколько параметров для Streama Server. Вы будете автоматически перенаправлены на страницу настроек.

Укажите путь к каталогу загрузки, который мы создали для хранения мультимедиа. Укажите базовый URL вашего приложения. Вы также можете настроить имя приложения и логотипы приложения. После этого нажмите Сохранить настройки, чтобы сохранить настройки. Теперь вы можете получить доступ к панели инструментов.

Чтобы добавить новую телепередачу или фильм, щелкните вкладку «Управление содержимым».

Вы можете щелкнуть вкладку «Диспетчер файлов» на странице «Управление содержимым», чтобы управлять файлами.

Теперь вы можете использовать Streama для потоковой передачи ваших любимых телешоу и фильмов.