Image

База знаний → Установка YouphpTube - собственной платформы видео хостинга на VPS

Установка AVideo/YouphpTube выполняется в несколько команд используя ssh консоль в linux. В качестве примера мы использовали Ubuntu 20.04 с преднастроенным LAMP. Вы можете заказать как чистый так и преднастроенный VPS сервер и выполнить настройку LAMP самостоятельно как описано выше по ссылке. Все описанные действия выполнялись от пользователя root.

1.1. Скачаем и установим приложение:

cd /var/www/
apt install git
git clone https://github.com/WWBN/AVideo.git
cd AVideo/
git clone https://github.com/WWBN/AVideo-Encoder.git
mv AVideo-Encoder upload
chown www-data:www-data /var/www/AVideo/ -R
apt install ffmpeg
apt install libimage-exiftool-perl
apt install php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline php7.4-curl php7.4-gd php7.4-xml
apt install python3-pip
pip3 install youtube-dl


1.2. Добавим в крон задачу:  

crontab -e

@daily sudo -H pip3 install --upgrade youtube-dl > /dev/null

Добавьте в самый конец файла задачу.


1.3. Подготовим базу данных для импорта данных:  

mysql
create database AVideo;
create user AVideo@localhost identified by 'your-password';
grant all privileges on AVideo.* to AVideo@localhost;
create database AVideoEncoder;
create user AVideoEncoder@localhost identified by 'your-password';
grant all privileges on AVideoEncoder.* to AVideoEncoder@localhost;
flush privileges;
exit;


1.4. Подготовим веб сервер, в нашем случае Apache FPM  

nano /etc/apache2/sites-available/avideo.conf

ServerName your-site.com DocumentRoot /var/www/AVideo

 DirectoryIndex index.php  Options +FollowSymLinks  AllowOverride All  Require all granted

ErrorLog ${APACHE_LOG_DIR}/avideo.error.log CustomLog ${APACHE_LOG_DIR}/avideo.access.log combined

Добавьте в файл и сохраните, предварительно изменив домен на свой, если домена нет, замените на localhost.


Активируем созданную конфигурацию:

a2ensite avideo.conf
a2enmod rewrite
systemctl restart apache2
a2dissite 000-default.conf


1.5. Переходим к установке в браузер, открыв http://your-server-ip/


Исправим предупреждения, которые отмечены красным:

nano /etc/php/7.4/apache2/php.ini
nano /etc/php/7.4/fpm/php.ini


Найдите строки в файлах:

post_max_size = 8M
upload_max_filesize = 2M


И замените на значения ниже:

post_max_size = 1024M
upload_max_filesize = 1024M


После чего необходимо перезапустить службы:

systemctl restart apache2
systemctl restart php7.4-fpm


1.6. Заполните поля: Database User, Database Name, Database Password данными, которые указали при создании баз данных:

Database User = AVideo
Database Name = AVideo
Database Password = your-password


После успешной установки, удалим установочную папку:

rm /var/www/AVideo/install/ -r


2. Установка декодировщика видео, в нашем примере мы устанавливаем его на тот-же сервер. При больших объемах загрузки видео на сервер мы рекомендуем использовать для него него отдельный сервер. Так как в промышленных масштабах первый сервер используется для просмотра и хранения декодированного видео, а второй для преобразования файлов. Так как этап декодирования использует значительные процессорные ресурсы эти службы часто разносят на разные сервера.

Перейдем по ссылке, открыв http://your-server-ip/upload и исправим значения php, указанные по умолчанию:

nano /etc/php/7.4/apache2/php.ini
nano /etc/php/7.4/fpm/php.ini


Найдите параметры:

max_execution_time = 30
memory_limit = 128M


Поменяйте их на эти:

max_execution_time = 7200
memory_limit = 512M


После чего применим настройки, перезапустив службы:

systemctl restart apache2
systemctl restart php7.4-fpm


2.1 Обновите страницу и заполните данные для второй базы данных:

Database User = AVideoEncoder
Database Name = AVideoEncoder
Database Password = your-password


А Также другие параметры

Allowed Avideo Sreamers Sites = http://your-server-ip/
AVideo Streamer Site URL = http://your-server-ip/
AVideo Streamer Site admin = admin
AVideo Streamer Site admin = Пароль созданный для пользователя admin на этапе 1.5


После установки удалим каталог в целях безопасности

rm /var/www/AVideo/upload/install/ -r


3. Переходим в настройки на основной URL http://your-server-ip/

В меню администрирования заходим в настройки -> настройки сайта -> дополнительные настройки. Измените URL кодировщика на http://your-server-ip/upload/. Сохраните настройки, очистите каталог кеша и создайте новую карту сайта.


Теперь выйдите из системы и войдите снова. Если вы нажмете кнопку кодирования видео и аудио в правом верхнем углу, вы попадете в свой собственный кодировщик для загрузки видео. Следует отметить, что скорость кодирования зависит от мощности процессора вашего сервера. Для этого не требуется много оперативной памяти, поскольку кодировщик скопирует видео во временный файл в каталоге загрузки (/var/www/AVideo/upload/videos).


После загрузки тестовых файлов, главная страница будет выглядеть так:


Меню администрирования


На этом базовая установка и настройка завершена. Видео и аудио файлы успешно кодируются и отображаются для просмотра. Данная CMS имеет большое количество настроек и возможностей, включая импорт и экспорт видео роликов из Youtube.





Нет комментариев