Aqui falaremos sobre os procedimentos que utilizamos para fazer um servidor de vídeos corporativos de uma maneira também bem simples utilizando o Vimp, caso queira ver um tutorial de como fazer o mesmo serviço utilizando o Clipbucket leia esse nosso post.
Lembre-se que será necessário ter cadastrado o nome DNS desse sistema (altere todas as partes em cinza conforme sua necessidade). Para instalar esse servidor, você vai precisar:
- Instalar o servidor CentOS padrão: Caso tenha dúvidas consulte aqui ou no link disponibilizado nas referências.
- Instalar o servidor Apache: Caso tenha dúvidas consulte aqui ou no link disponibilizado nas referências.
- Caso queira configurar o site como HTTPS (consulte aqui, ou nas referências abaixo).
- Instalar o servidor MySQL (Nesse post iremos instalar o banco junto à aplicação, mas você pode preferir instalar e criar o banco em um servidor separado). Caso tenha dúvidas consulte como instalar o MySQL .
systemctl start mysqld
mysql -u root -p
Será solicitado a senha do root (definida anteriormente) informe-a, sem seguida (dentro do MySQL) defina o usuário e senha (que está em cinza) com acesso a este banco:
create database vimp default character set utf8 collate utf8_unicode_ci;
No comando abaixo, altere a variável do IP do servidor de aplicação do Vimp:
grant all privileges on vimp.* to 'vimp'@'%' identified by 'secretpassword';
flush privileges;
quit
Com o Apache instalado, vamos configurar algumas opções necessárias, para isso execute:
mkdir -p /var/www/html/blank
touch /var/www/html/blank/index.html
chown -R apache.apache /var/www/html/blank
chmod -R 500 /var/www/html/blank
sed -i "s/#Listen 12.34.56.78:80/NameVirtualHost *:80/g" /etc/httpd/conf/httpd.conf
sed -i "s/DocumentRoot \"\/var\/www\/html\"/DocumentRoot \"\/var\/www\/html\/blank\"/g" /etc/httpd/conf/httpd.conf
sed -i "s/AllowOverride None/AllowOverride All/g" /etc/httpd/conf/httpd.conf
touch /var/log/httpd/nomefqdn_do_seu_servidor-error.log
touch /var/log/httpd/nomefqdn_do_seu_servidor-requests.log
vim /etc/httpd/conf.d/vhosts.conf
Dentro, pressione a tecla INSERT para entrar em modo de edição e insira o seguinte conteúdo no final do arquivo:
<VirtualHost *:80> ServerName nomefqdn_do_seu_servidor ServerAdmin suporte@nomefqdn_do_seu_servidor DocumentRoot /var/www/html/blank ErrorLog “/var/log/httpd/nomefqdn_do_seu_servidor-error.log” CustomLog “/var/log/httpd/nomefqdn_do_seu_servidor-requests.log” combined </VirtualHost> |
Feito isso digite a tecla ESC e em seguida digite :wq! e pressione ENTER para sair e salvar. Agora execute:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install yum-utils -y
yum install php php-cli php-common php-gd php-intl php-ldap php-mbstring php-mcrypt php-curl php-mysql php-pecl-zip php-xml php-xmlrpc --enablerepo=remi-php70 -y
sed -i "s/;date.timezone =/date.timezone = America\/Sao_Paulo/g" /etc/php.ini
sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 8192M/g" /etc/php.ini
sed -i "s/post_max_size = 8M/post_max_size = 8192M/g" /etc/php.ini
sed -i "s/memory_limit = 128M/memory_limit = 1024M/g" /etc/php.ini
sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini
sed -i "s/max_execution_time = 30/max_execution_time = 7300/g" /etc/php.ini
service httpd restart
Instalando os CODECs
Para instalar os CODECs, execute:
rm -rf /usr/local/bin
ln -s /usr/bin/ /usr/local/bin
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
yum install automake bzip2 faac faac-devel faad2 gcc gpac gpac-devel gpac-libs
gstreamer{,1}-plugins-ugly gstreamer1-plugins-bad-freeworld
gstreamer-plugins-bad-nonfree HandBrake-{gui,cli} icedtea-web lame lame-devel lame-mp3x libdvdcss libde265 libde265-devel libjpeg-devel libogg libtheora-devel libvorbis libvorbis-devel libvpx libvpx-devel make mencoder mplayer mod_flvx nasm opencore-amr opencore-amr-devel opus
opusfile patch perl-Image-ExifTool
smplayer subversion unzip vlc x264 x264-devel x264-libs x265 x265-libs
xvidcore xvidcore-devel yasm zlib-devel -y
ldconfig
yum install ruby rubygems -y
gem install flvtool2
cd /opt/
wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz
tar --xz -xvf ffmpeg-git-amd64-static.tar.xz
rm -rf ffmpeg-git-amd64-static.tar.xz
mv ffmpeg-git-*-amd64-static/ ffmpeg
ln -s /opt/ffmpeg/ffmpeg /usr/bin/ffmpeg
ln -s /opt/ffmpeg/ffprobe /usr/bin/ffprobe
Instalando o PHP
Para instalar e configurar o PHP 7.2 (versão usada nesse POST), execute:
yum install yum-utils -y
yum install php
php-cli php-common php-curl php-gd php-intl php-ldap php-mbstring php-mcrypt
php-mysql php-pecl-mcrypt php-pecl-zip php-xml php-xmlrpc time --enablerepo=remi-php72
-y
sed -i "s/;date.timezone =/date.timezone = America\/Sao_Paulo/g" /etc/php.ini
sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 8192M/g" /etc/php.ini
sed -i "s/post_max_size = 8M/post_max_size = 8192M/g" /etc/php.ini
sed -i "s/memory_limit = 128M/memory_limit = 1024M/g" /etc/php.ini
sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini
sed -i "s/max_execution_time = 30/max_execution_time = 7300/g" /etc/php.ini
sed -i "s/short_open_tag = On/short_open_tag = Off/g" /etc/php.ini
service httpd restart
Instalando o Vimp
Para instalar, execute:
mkdir /usr/src/loader
cd /usr/src/loader
wget http://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.tar.gz
tar xzf loaders.linux-x86_64.tar.gz
rm -rf loaders.linux-x86_64.tar.gz
cp ixed.7.2.lin /usr/lib64/php/modules/
echo "[sourceguardian]" >> /etc/php.d/sourceguardian.ini
echo "zend_extension=/usr/lib64/php/modules/ixed.7.2.lin" >> /etc/php.d/sourceguardian.ini
mkdir -p /var/www/html/corporetube.suaempresa.com/web
chown -R apache:apache /var/www/html/corporetube.suaempresa.com
touch /var/log/httpd/corporetube.suaempresa.com-error.log
touch /var/log/httpd/corporetubesuaempresa.com-requests.log
vim /etc/httpd/conf.d/vhosts.conf
Dentro, pressione a tecla INSERT para entrar em modo de edição e insira o seguinte conteúdo no final do arquivo:
<VirtualHost *:80> ServerName corporetube.suaempresa.com ServerAlias corporetube ServerAdmin suporte@suaempresa.com DocumentRoot /var/www/html/corporetube.suaempresa.com/web ErrorLog “/var/log/httpd/corporetube.suaempresa.com-error.log” CustomLog “/var/log/httpd/corporetube.suaempresa.com-requests.log” combined </VirtualHost> <Directory “ /var/www/html/corporetube.suaempresa.com/web”> Options FollowSymLinks AllowOverride All Require all granted </Directory> |
Feito isso digite a tecla ESC e em seguida digite :wq! e pressione ENTER para sair e salvar. Reinicie o Apache, com o comando:
service httpd restart
Agora acesse o site de download do Vimp Light, baixe a versão mais atual, coloque na pasta /tmp do servidor linux (nesse POST, usamos a versão 4.1.3) e execute:
cd /var/www
chmod +x vimp.framework*
./vimp.framework*
Durante a configuração, uma série de itens será questionado, responda o seguinte:
- Install path [/var/www]: /var/www/html/corporetube.suaempresa.com
- Really use it? [Y/n]: y
- Continue? [Y/n]: Verifique se não existem erros de configuração e pressione ENTER
- Server user [www-data]: apache
- Server group [www-data]: apache
- Database host [localhost]: IP_DO_SEU_BANCO
- Database port [3306]: Apenas pressione ENTER
- Database name []: vimp
- Database user []: vimp
- Database password []: suasenha
- Default language [en]: en
- Default country [European Union]: Brazil
- Maximum upload filesize [100MB]:Apenas pressione ENTER
- Detect transcoding tools automatically? [Y/n]: y
- ffmpeg path [/usr/bin/ffmpeg]: Apenas pressione ENTER
- ffprobe path [/usr/bin/ffprobe]: Apenas pressione ENTER
- exiftool path [/usr/bin/exiftool]: Apenas pressione ENTER
- Web address []: http://corporetube.suaempresa.com
- Portal e-mail address []: suporte@suaempresa.com
- Portal name [ViMP]: CorporeTube
- Portal title [ViMP]: Videos Corporativos
- Portal description [ViMP]: Ambiente de Aprendizadem
- Portal keywords [ViMP]: Videos
- Changes for Database found. Apply? [Y/n]: y
- Changes for Database found. Apply? [Y/n]: y
Agora execute:
service httpd restart
echo "*/1 * * * * /var/www/html/corporetube.suaempresa.com/scripts/sync_new_uploads.sh > /dev/null 2>&1" >> /var/spool/cron/root
echo "0 2 * * * php -f /var/www/html/corporetube.suaempresa.com/symfony -- dashboard-sync >> /var/www/html/corporetube.suaempresa.com/log/dashboard-sync.log 2>&1" >> /var/spool/cron/root
chmod -R 777 /var/www/html/web/uploads/
service crond restart
systemctl restart httpd
Com toda a configuração feita, acesse o servidor (e configure pela interface de administração). Se quiser alterar os logos para o da sua empresa, altere os arquivos /var/www/html/corporetube.suaempresa.com/templates/pacific/images/footer-logo.png e /var/www/html/corporetube.suaempresa.com/templates/pacific/images/logo.png (lembre-se de manter as mesmas permissões e proprietários dos arquivos)
Fontes/Referências
NVLAN – Configurar o apache como HTTPS (com SSL) no CentOS
NVLAN – Instalação padrão do CentOS7
NVLAN – Instalando o Apache no CentOS
NVLAN – Instalando o MySQL 5.5 no CentOS
NVLAN – Instalar um servidor de vídeos (Youtube) em CentOS com o ClipBucket
https://support.vimp.com/en/downloads/vimp-light-edition.html
Mais Informações
Esperamos ter ajudado da melhor forma possível e estaremos sempre a disposição para mais informações.
Entre em contato conosco pelo e-mail equipe@nvlan.com.br.