Create Your Own Video Sharing Website using ‘CumulusClips Script’ in Linux

CumulusClips is an open source video sharing (content management) platform, that provides one of the best video sharing features similar to Youtube. With the help of CumulusClips, you an start your own video sharing website or add video sections on your existing website, where users can register, upload videos, comment on videos, rate videos, embed videos and much more.

Install CumulusClips in Linux
Install CumulusClips in Linux

CumulusClips Features

  1. Easy uploading of videos (mpg, avi, divx and more) from user computer with upload progress bar.
  2. Add, Delete and Edit Videos from the Dashboard.
  3. Allow or disable comments on videos and as well as video embedding.
  4. Easy user registration with unique url for their profile page and fully profile customization.
  5. Approve or Reject user uploaded videos via Dashboard.
  6. Built-in theme/plugin and translation ready.
  7. Easily create, delete and run Ads.
  8. Support for future automatic updates.
CumulusClips Demo

Please have a quick look at the demo page deployed by the developer at the following location.

  1. http://demo.cumulusclips.org/

Server Requirements

CumulusClips application only runs in Unix/Linux operating systems. Following are the requirements to run CumulusClips on Linux platform.

  1. Apache Web Server with mod_rewrite and FFMpeg enabled.
  2. MySQL 5.0+ and FTP
  3. PHP 5.2+ with GD, curl, simplexml and zip modules.
PHP Settings

Following are the PHP requirements.

  1. upload_max_filesize = 110M
  2. post_max_size = 110M
  3. max_execution_time = 1500
  4. open_basedir = no value
  5. safe_mode = Off
  6. register _globals = Off
Testing Environment
  1. Operating System – CentOS 6.5 & Ubuntu 13.04
  2. Apache – 2.2.15
  3. PHP – 5.5.3
  4. MySQL – 5.1.71
  5. CumulusClips – 1.3.2

Installing CumulusClips in RHEL/CentOS/Fedora and Debian/Ubuntu/Linux Mint

Installing CumulusClips script is a very simple and involves few easy straightforward steps. Before you can start with the install process, make sure that your server meets the requirements for running CumulusClips script.

Step:1 Install Required Packages

Let’s first, install required packages that needed to run CumulusClips video sharing application on the system, using the following easy steps.

On RedHat, CentOS and Fedora
# yum install httpd mysql mysql-server 
# yum install php php-mysql php-xml pcre php-common php-curl php-gd

Once, the required packages are installed, start the Apache and MySQL service.

# service httpd start
# service mysqld start

Next, install FFMPEG package by enabling third party RPMForge Repository under your Linux distributions.

# yum install ffmpeg
On Debian, Ubuntu and Linux Mint

On Debian based system, you can easily install required packages using following commands.

$ sudo apt-get install apache2 mysql-server mysql-client
$ sudo apt-get install php5 libapache2-mod-auth-mysql libmysqlclient15-dev php5-mysql curl libcurl3 libcurl3-dev php5-curl 
$ sudo apt-get install ffmpeg
$ sudo service apache2 start
$ sudo service mysql start

Step 2: Create Database and User

Next, create a database and database user to run CumulusClips. Use the following commands to create a database and a user.

# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5340 to server version: 3.23.54

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> CREATE DATABASE cumulusclips;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON cumulusclips.* TO "cumulus"@"localhost" IDENTIFIED BY "password";
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

mysql> quit

Note: The above, database name, username, and password will required later at the installation wizard.

Step 3: Configure PHP Settings

Open ‘php.ini‘ configuration file and make the following changes as suggested.

# vi /etc/php.ini			[on RedHat based Systems]
$ sudo nano /etc/php5/apache2/php.ini	[on Debian based Systems]

Search and modify values as suggested in the following.

upload_max_filesize = 110M
post_max_size = 110M
max_execution_time = 1500
open_basedir = no value
safe_mode = Off
register _globals = Off

Save and close the file after making changes. Next restart Apache Web Server.

# service httpd restart			[on RedHat based Systems]
$ sudo service apache2 restart		[on Debian based Systems]

Step 4: Install and Configure FTP

Now, install FTP server (i.e. vsftpd) on your Linux OS, using the following command.

# yum install vsftpd			[on RedHat based Systems]
$ sudo apt-get install vsftpd		[on Debian based Systems]

Once Vsftpd installed, you can adjust the configuration as shown below. Open up the configuration file.

# vi /etc/vsftpd/vsftpd.conf		[on RedHat based Systems]
$ sudo nano /etc/vsftpd.conf		[on Debian based Systems]

Change the ‘anonymous_enable‘ to NO.

anonymous_enable=NO

After that, remove ‘#‘ at the beginning of line ‘local_enable‘ option, changing it to YES.

local_enable=YES

Please remove the ‘#‘ at the start of these lines to enable all the local users to chroot to their home directories and will not have access to any other part of server.

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

Finally restart the vsftpd service.

# service vsfptd restart		[on RedHat based Systems]
$ sudo service vsftpd restart		[on Debian based Systems]

Step 5: Download & Install CumulusClips

To begin, you must first grab your free copy of CumulusClips script at http://cumulusclips/download/, or you may use following wget command to download it as shown below.

# cd /var/www/html/			[on RedHat based Systems]
# cd /var/www/				[on Debian based Systems]
# wget http://cumulusclips.org/cumulusclips.tar.gz
# tar -xvf cumulusclips.tar.gz
# cd cumulusclips

Now grant the ‘777‘ (read, write and execute) permission on the following directories. Make sure these directories are writable by Web Server and PHP.

# chmod -R 777 cc-core/logs
# chmod -R 777 cc-content/uploads/flv
# chmod -R 777 cc-content/uploads/mobile
# chmod -R 777 cc-content/uploads/temp
# chmod -R 777 cc-content/uploads/thumbs
# chmod -R 777 cc-content/uploads/avatars

Next, grant the ownership to cumulusclips for web server to be writeable.

# chown -R apache:apache /var/www/html/cumulusclips		[on RedHat based Systems]
# chown -R www-data:www-data /var/www/cumulusclips		[on Debian based Systems]
Step 6: CumulusClips Installation Wizard

Once everything is ready, you can have access to your CumulusClips installation wizard at the (http://your-domain.com/cumulusclips/cc-install/), using your web browser.

Welcome to CumulusClips
Welcome to CumulusClips

The installation wizard will verify the files are writable by the web server. If not, you will be asked to enter FTP credentials to perform future updates and other file system changes.

Enter FTP Credentials
Enter FTP Credentials

Enter the database details like database name, user and password, that we’ve created in Step #2 above.

Enter Database Settings
Enter Database Settings

Enter, about your site configuration like, Base URL, Sitename, Admin Account, Password and Email.

Enter Site Details
Enter Site Details

CumulsCliops Admin Panel

CumulusClips Admin Dashboard
CumulusClips Admin Dashboard

View Front page of a Website.

CumulusClips Front View
CumulusClips Front View

Start uploading your own videos.

Upload Own Videos
Upload Own Videos

See list of Approved Videos.

User Approved Videos
User Approved Videos

General Settings

General Settings
General Settings

Start playing videos

Play Videos
Play Videos
Playing a Video
Playing a Video

That’s it! Now, you can start uploading videos, customizing and branding of your newly installed CumulusClips Video Sharing website.

Ravi Saive
I am an experienced GNU/Linux expert and a full-stack software developer with over a decade in the field of Linux and Open Source technologies

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

Leave a Reply to Jhon Cancel reply

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.