CumulusClips, host your own Youtube website

cumulusclips logoYoutube has rapidly became one of the most popular website on the web. With more than a billion unique users every month and more than 100 hours of video are uploaded to Youtube every minute, clearly no one can argue on Youtube supremacy.


But well, it’s might not be the platform you are looking for… Although you can have direct exposure from Youtube, you can also “drown” into the massive numbers of videos there. And also, you may prefer to have full control on what is being done with your videos (Ads and co).

If you are looking for a selfhosted application to host your own Youtube-like website, several alternatives exists, of which CumulusClips sounds to do a good job.

cumulusclips demo screenshotIndeed, CumulusClips is an Opensource and free video sharing script (or CMS) where users can upload their own videos but also rate, comment and share those videos.

Easy to install,CumulusClips is Mobile ready, Theme Based, and can be linked to your Google Analytics through an official addons.

Translated in 7 languages (Spanish, German, French, Portuguese, Italian, Russian and Turkish), CumulusClips does not need much to work (FFMPEG, MySQL 5.0+, PHP 5.2+ and Apache2).

On the downside tho, it’s recommended to have 1GB Ram and is based on flash to display videos (No HTML5). The latest release is from Feb 2013, but they are working on a V2 and will be available hopefully by end of this year.

Want to see how it looks like? Check out their demo or an “in production” version of TheatrOn.

Let’s see know how to install it.


1) FFMPEG and Apache mod rewrite

To install CumulusClips, you will need to have FFMPEG and the apache mod rewrite activated.

In root, (or with sudo), simply run:

apt-get install ffmpeg
a2enmod rewrite

2) Download the latest archive in your /var/www

cd /var/www

3) Change the owner of the cumulusclips folder for Apache web user

chown -R www-data:www-data /var/www/cumulusclips

4) Proceed to web based installation

Simply go into http://YourIP/cumulusclips to access to the web installer.

cumulusclips screenshot installation– You will be able to check if you passed all the requirements. If you have some PHP Warning on the post_max_size, upload_max_filesize, and max_execution_time, it’s normal as these value are quite low per default (2mb and 30s). We will modify these values later directly into a virtualhost.

cumulusclips requirements– Then you will need a database created for CumulusClips. I recommend you to use PHPMyAdmin or Adminer to do so.

cumulusclips database– And finally the site details (URL, Name, admin user/pass)

And you’re good to go!

cumulusclips admin panel

Now you may want to force the SSL connection or/and create a dedicated subdomain name (like and also ensure the PHP value are set per your needs.

To do so, we will setup a virtualhost.

Virtualhost configuration

What you will need:

1) Create a A redirection in your DNS server/registrar with vid.domain.tld to your IP

2) Have SSL certificate ready. If not you can read this tutorial. (Optional)

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called cumulus (In root):

nano /etc/apache2/sites-enabled/cumulus

and paste the following content:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName vid.domain.tld
        Redirect / https://vid.domain.tld

<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/myblog.pem
        SSLCertificateKeyFile /etc/ssl/private/myblog.key

        ServerAdmin webmaster@domain.tld
        ServerName vid.domain.tld

        DocumentRoot /var/www/cumulusclips
        <Directory />
                Options FollowSymLinks
                AllowOverride All

        php_value memory_limit 200M
        php_value post_max_size 200M
        php_value upload_max_filesize 200M
        php_value max_execution_time = 1500

        <Directory /var/www/cumulusclips>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all

Adapt the content (Servername, webmaster, SSL certificate, phpvalue and directory).

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

/etc/init.d/apache2 reload

Now your CumulusClips should be fully working.

If you have any technical questions on the project, not related to this short tutorial, they have a dedicated forum.


Loves to discover web-based apps to install on his own server@home and write articles about it


Add a comment