is a free, open source media archive platform.
Go to file
2016-05-17 15:25:18 +00:00
etc init: restart celery workers on 'reload' (fixes #2904) 2016-03-17 10:32:58 +01:00
pandora findAnnotations: include duration alongside result count 2016-05-05 15:54:25 +01:00
scripts upper case pi, fixes #1677 2013-07-22 19:27:20 +00:00
static name can contain &, decode html first. fixes #2917 2016-05-17 15:25:18 +00:00
vm use xenial repository if installing on 16.04 2016-04-28 13:27:46 +02:00
.gitignore check that range is [int, int] 2016-03-17 16:06:08 +01:00
COPYING add gpl3 2012-11-26 17:46:14 +01:00
ctl move gunicorn configuration from init script to config file 2016-03-07 14:25:24 +05:30 use markdown in readme 2016-04-15 14:21:24 +02:00
requirements.txt update celery package and promt to install new init files for workers 2016-03-17 10:38:15 +01:00 <= 2016-03-17 10:47:08 +01:00 - open media archive

for more information on visit our website at

SETUP is known to work with Ubuntu 14.04, but other distributions should also work. The instructions below are for Ubuntu 14.04. All commans given expect that you are root.

To run you need to install and setup:

nginx (or apache2)
additinal video packages

Installing required packages

  1. add pandora ppa to get all packages in the required version

    apt-get install software-properties-common add-apt-repository ppa:j/pandora apt-get update

  2. install all required packages

    apt-get install git subversion mercurial
    python-setuptools python-pip python-virtualenv ipython
    python-dev python-imaging python-numpy python-psycopg2
    python-geoip python-html5lib python-lxml
    postgresql postgresql-contrib rabbitmq-server
    poppler-utils mkvtoolnix gpac imagemagick
    python-ox oxframe ffmpeg

Prepare Environment

  1. add pandora user and set permissions

    adduser pandora --disabled-login --disabled-password

  2. Setup Database

    su postgres createuser pandora createdb -T template0 --locale=C --encoding=UTF8 -O pandora pandora echo "CREATE EXTENSION pg_trgm;" | psql pandora exit

  3. Setup RabbitMQ

You have to use the same password here and in BROKER_URL in

rabbitmqctl add_user pandora PASSWORD
rabbitmqctl add_vhost /pandora
rabbitmqctl set_permissions -p /pandora pandora ".*" ".*" ".*"


  1. Get code from git

    cd /srv/ git clone pandora cd pandora ./ctl init

    cd /srv chown -R pandora.pandora pandora

  2. create and config.jsonc

2.1) create file /srv/pandora/pandora/ with the following content:

    'default': {
        'NAME': 'pandora',
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'USER': 'pandora',
        'PASSWORD': '',
BROKER_URL = 'amqp://pandora:PASSWORD@localhost:5672//pandora'

#with apache x-sendfile or lighttpd set this to True

#with nginx X-Accel-Redirect set this to True

2.2) create config.jsonc

config.jsonc holds the configuration for your site. To start you can copy /srv/pandora/pandora/config.pandora.jsonc to /srv/pandora/pandora/config.jsonc but have a look at and config.0xdb.jsonc config.padma.jsonc for configuration options.

  1. initialize database

    su pandora cd /srv/pandora/pandora ./ init_db

  2. install init scripts and start daemons

    /srv/pandora/ctl install /srv/pandora/ctl start

  3. Setup Webserver a) nginx (recommended)

    apt-get install nginx cp /srv/pandora/etc/nginx/pandora /etc/nginx/sites-available/pandora cd /etc/nginx/sites-enabled ln -s ../sites-available/pandora

    #read comments in /etc/nginx/sites-available/pandora for setting #your hostname and other required settings #make sure XACCELREDIRECT = True in /srv/pandora/pandora/

    service nginx reload

b) apache2 (if you need it for other sites on the same server)

apt-get install apache2-mpm-prefork libapache2-mod-xsendfile
a2enmod xsendfile
a2enmod proxy_http
a2enmod proxy_wstunnel
cp /srv/pandora/etc/apache2/pandora.conf /etc/apache2/sites-available/pandora.conf
a2ensite pandora

#read comments in /etc/apache2/sites-available/pandora.conf for setting
#your hostname and other required settings
#make sure XSENDFILE = True in /srv/pandora/pandora/

service apache2 reload

Now you can open pandora in your browser, the first user to sign up will become admin.


To update pandora to the latest version run this:

su pandora
cd /srv/pandora

this will update pandora/oxjs/python-ox and list possible upgrades to the db

to update your database run:

su pandora
cd /srv/pandora
./ db


in one terminal:

./ runserver 2620

and background task in another:

./ celeryd -B -Q celery,default,encoding -l INFO

now you can access your local pandora instace at

we use virtual machines/lxc for development, you can get a vm from our site or use the script in vm/ to create one.