Falaremos os procedimentos que utilizamos para fazer um servidor de vídeos corporativos de uma maneira também bem simples, caso queira ver um tutorial de como fazer o mesmo serviço utilizando o Vimp leia esse nosso post.

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.
  • 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 .

Para instalar o ClipBucket faça logon como root e execute:

ln -s /usr/local/bin /usr/bin

Configure a senha de root, em seguida execute:

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 clipbucket;

No comando abaixo, altere a variável do IP do servidor de aplicação do Clip-Bucket:

grant all privileges on clipbucket.* to 'clipbucket'@'%' identified by 'secretpassword';
flush privileges;
quit

Configure o servidor web:

yum install httpd-devel -y

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/`hostname`-error.log
touch /var/log/httpd/`hostname`-des-requests.log

echo "<VirtualHost *:80>" >> /etc/httpd/conf.d/vhosts.conf
echo "        ServerName `hostname`" >> /etc/httpd/conf.d/vhosts.conf
echo "        ServerAdmin suporte@suaempresa.com.br" >> /etc/httpd/conf.d/vhosts.conf
echo "        DocumentRoot /var/www/html/blank" >> /etc/httpd/conf.d/vhosts.conf
echo "        ErrorLog \"/var/log/httpd/`hostname`-error.log\"" >> /etc/httpd/conf.d/vhosts.conf
echo "        CustomLog \"/var/log/httpd/`hostname`-des-requests.log\" combined" >> /etc/httpd/conf.d/vhosts.conf
echo "</VirtualHost>" >> /etc/httpd/conf.d/vhosts.conf
echo "" >> /etc/httpd/conf.d/vhosts.conf
echo "<VirtualHost *:80>" >> /etc/httpd/conf.d/vhosts.conf
echo "        ServerName corporetube.suaempresa.com.br" >> /etc/httpd/conf.d/vhosts.conf
echo "        ServerAlias corporetube" >> /etc/httpd/conf.d/vhosts.conf
echo "        ServerAdmin suporte@suaempresa.com.br" >> /etc/httpd/conf.d/vhosts.conf
echo "        DocumentRoot /var/www/html/corporetube" >> /etc/httpd/conf.d/vhosts.conf
echo "        ErrorLog \"/var/log/httpd/corporetube-error.log\"" >> /etc/httpd/conf.d/vhosts.conf
echo "        CustomLog \"/var/log/httpd/corporetube-requests.log\" combined" >> /etc/httpd/conf.d/vhosts.conf
echo "</VirtualHost>" >> /etc/httpd/conf.d/vhosts.conf

yum install php-dom php-gd php-intl php-ldap gd gd-devel php-devel php-imap -y

sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 200M/g" /etc/php.ini
sed -i "s/post_max_size = 8M/post_max_size = 1024M/g" /etc/php.ini
sed -i "s/memory_limit = 128M/memory_limit = 512M/g" /etc/php.ini
sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini

service httpd restart

touch /var/log/httpd/corporetube-error.log
touch /var/log/httpd/corporetube-requests.log 

yum install --enablerepo=fedora-source php-pecl-zendopcache -y

sed -i "s/;opcache.revalidate_freq=2/opcache.revalidate_freq = 60/g" /etc/php.d/opcache.ini
sed -i "s/;opcache.use_cwd=1/opcache.use_cwd=1/g" /etc/php.d/opcache.ini
sed -i "s/;opcache.validate_timestamps=1/opcache.validate_timestamps=1/g" /etc/php.d/opcache.ini
sed -i "s/;opcache.save_comments=1/opcache.save_comments=1/g" /etc/php.d/opcache.ini
sed -i "s/;opcache.enable_file_override=0/opcache.enable_file_override=0/g" /etc/php.d/opcache.ini

yum install bc bind-utils dos2unix git ImageMagick jre libcdio libcdio-paranoia libraw1394 mailx mediainfo memcached mesa-filesystem mlocate mod_ssl openjpeg openssl-devel php-pecl-memcache pulseaudio screen SDL SDL-devel sox subversion yum-protectbase -y

sed -i "s/\[mysqld\]/\[mysqld\]\nlower_case_table_names=1/g" /etc/my.cnf

systemctl enable memcached.service 

Após a instalação, os endereços para acesso serão:

  • http://corporetube.suaempresa.com.br
  • http://corporetube.suaempresa.com.br/admin_area

Para instalar os codecs, 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

cp ixed.5.4.lin /usr/lib64/php/modules
echo "[sourceguardian]" >> /etc/php.d/sourceguardian.ini
echo "zend_extension=/usr/lib64/php/modules/ixed.5.4.lin" >> /etc/php.d/sourceguardian.ini 

yum groupinstall 'Development Tools' -y
yum install ruby -y
yum install freeglut-devel mesa-libGL-devel mesa-libGLU-devel libXi-devel libXmu-devel -y 

echo "[remi]" > /etc/yum.repos.d/remi.repo
echo "name = Remi Repo" >> /etc/yum.repos.d/remi.repo
echo "baseurl = http://rpms.famillecollet.com/enterprise/6/remi/x86_64/" >> /etc/yum.repos.d/remi.repo
echo "gpgcheck = 1" >> /etc/yum.repos.d/remi.repo
echo "enabled = 0" >> /etc/yum.repos.d/remi.repo 

yum install --enablerepo=remi mysql-libs -y
yum install --enablerepo=fedora-source php-mcrypt php-pecl-memcached php-pecl-ssh2 -y
yum install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm -y
yum install http://linuxdownload.adobe.com/linux/x86_64/adobe-release-x86_64-1.0-1.noarch.rpm -y
yum install ffmpeg ffmpeg-devel flash-plugin flvtool2 gstreamer{,1}-plugins-ugly gstreamer1-plugins-bad-freeworld gstreamer-plugins-bad-nonfree HandBrake-{gui,cli} icedtea-web lame libdvdcss libogg libvorbis mencoder smplayer vlc -y
yum install bzip2 php-devel -y

mkdir /usr/local/include/ffmpeg
cp -p /usr/include/ffmpeg/libavformat/avio.h /usr/local/include/ffmpeg
cp -p /usr/include/ffmpeg/libavformat/avformat.h /usr/local/include/ffmpeg
cp -p /usr/include/ffmpeg/libavcodec/avcodec.h /usr/local/include/ffmpeg
cp -R /usr/include/ffmpeg/* /usr/local/include/ffmpeg 

cd /usr/share/ffmpeg 

wget http://repo.bstack.net/ffmpegauto/libx264-hq.ffpreset
wget http://repo.bstack.net/ffmpegauto/libx264-normal.ffpreset
yum install gpac-devel gpac-libs gpac mod_flvx yasm libogg libvorbis -y
grep /usr/local/lib /etc/ld.so.conf || echo "/usr/local/lib" >> /etc/ld.so.conf
yum install xvidcore xvidcore-devel x264 x264-devel x264-libs opencore-amr opencore-amr-devel faac faac-devel lame lame-mp3x lame-lib opus opusfile libvpx libvpx-devel x265 x265-libs libde265 libde265-devel -y
yum install --enablerepo=* faad2 faac-devel -y

cd /usr/local/src
wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure

make
make install
make distclean 

cd /usr/local/src
wget http://downloads.sourceforge.net/project/yamdi/yamdi/1.8/yamdi-1.8.tar.gz
tar xzf yamdi-1.8.tar.gz
cd yamdi-1.8
gcc yamdi.c -o yamdi -O2 -Wall
strip yamdi
cp yamdi /usr/bin/yamdi

gem install flvtool2

cd /tmp
wget https://prdownloads.sourceforge.net/clipbucket/clipbucket-2.7.0.5.v2996-stable.zip

unzip clipbucket-2.7.0.5.v2996-stable.zip
mv /tmp/clipbucket-2.7.0.5.v2996-stable/upload /var/www/html/
cd /var/www/html
mv upload corporetube
chmod -R 777 /var/www/html/corporetube
rm -rf /tmp/*

Abra o site e instale, ao final execute:

rm -fr /var/www/html/corporetube/cb_install/
chmod -Rv 755 /var/www/html/corporetube/includes/

echo "* * * * * php -q /var/www/html/corporetube/actions/video_convert.php" >> /var/spool/cron/root
echo "* * * * * php -q /var/www/html/corporetube/actions/verify_converted_videos.php" >> /var/spool/cron/root
echo "0 0,12,13 * * * php -q /var/www/html/corporetube/actions/update_cb_stats.php" >> /var/spool/cron/root

service crond restart 

cd /usr/lib64/
cp libfaad.so.2 libfaad.so.0

Agora acesse o endereço http://corporetube.suaempresa.com.br/admin_area, dentro:

  • Vá em Stats and e escolha Website Configurations. Configure:
    • Website title: Corporetuve
    • Website slogan: Videos Insitucionais
    • Closed message: Site atualizando, tente novamente mais tarde.
    • Allow language change: no
    • Allow template change: no
    • Website Email: suporte@suaempresa.com.br
    • Support Email: suporte@suaempresa.com.br
    • Welcome Email: suporte@suaempresa.com.br
    • Clique na aba Uploading and conversion Settings e configure:
      • SFFMPEG Path: /usr/bin/ffmpeg
      • MP4Box Path: /usr/bin/MP4Box
      • Upload Options: Desmarque Remote Upload
      • Na guia inferior Video Conversion: altere:
        • Audio Codec: libmp3lame
      • Clique em Update Settings
    • Vá em Stats and e em Email Settings e configure:
      • Select Mailer Type php Mail() or SMTP: PHP mail()
      • SMTP Host: smtp.suaempresa.com.br
      • Clique em Update Settings
    • Vá em Stats and e em Language Settings edite a língua padrão e altere os textos para customizar as mensagens de acordo com o padrão desejado.

Fontes/Referências

NVLAN – Instalação padrão do CentOS7

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.

NVLAN - Consultoria