pandora/README

78 lines
2.4 KiB
Text
Raw Normal View History

pan.do/ra - open media archive
== DEVELOPMENT ==
To setup a development instance of pan.do/ra,
you need python, bazaar, pip and virtualenv and several other python modules:
* Packages
apt-get install python-setuptools python-pip python-virtualenv ipython
apt-get install python-dev python-imaging python-numpy python-psycopg2
2009-12-31 15:04:32 +00:00
2010-07-03 11:14:16 +00:00
bzr branch http://code.0x2620.org/pandora pandora
cd pandora
2009-12-31 15:04:32 +00:00
virtualenv .
pip -E . install -r requirements.txt
cd static
bzr branch http://code.0x2620.org/oxjs
2009-12-31 15:04:32 +00:00
* Additional pandora tools:
You need current versions of mkvtoolnix, oxframe, oxtimeline installed.
For Ubuntu we provide these packages in a ppa:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:j/pandora
sudo add-apt-repository ppa:gstreamer-developers/ppa
sudo apt-get update
sudo apt-get install oxframe oxtimeline mkvtoolnix
2009-12-31 15:04:32 +00:00
* Database
We use postgresql but other databases might also work
(make sure you have the python bindings installed).
2009-12-31 15:04:32 +00:00
create a postgresql database and adjust settings in local_settings.py
2010-12-24 10:31:44 +00:00
and run ./manage.py syncdb to populate the database
you might want to load example configurations from fixutes.
2009-12-31 15:04:32 +00:00
* RabbitMQ
For background tasks we use RabbitMQ, to install rabbitmq:
2009-12-31 15:04:32 +00:00
sudo apt-get install rabbitmq-server
and create permissions according to BROKER_* in local_settings.py i.e.:
2010-06-25 11:53:57 +00:00
sudo rabbitmqctl add_user pandora box
sudo rabbitmqctl add_vhost /pandora
2010-06-25 11:53:57 +00:00
sudo rabbitmqctl set_permissions -p /pandora pandora ".*" ".*" ".*"
2009-12-31 15:04:32 +00:00
* H264
to support h264 videos, install ffmpeg with x264 enabled,
install qt-faststart from (ffmpeg/tools)
set VIDEO_H264 = True in local_settings.py
2009-12-31 15:04:32 +00:00
Running developer environment:
in one terminal:
2010-12-24 10:31:44 +00:00
./manage.py runserver
and in another one:
2010-12-24 10:31:44 +00:00
./manage.py celeryd -Q default,encoding
Updating database:
right now database updates are not managed, each time you update to current bzr
you might have to update db tables too.
Use
./manage.py sqldiff appname
to check if changes exist and
./manage.py sqldiff appname | ./manage.py dbshell
to apply them.
This has to be done for all installed apps
== DEPLOYMENT ==
To run pan.do/ra in production, we use nginx, using apache2 is also possible.
* nginx setup
sudo apt-get install nginx
* apache2 setup
sudo apt-get install apache2-mpm-prefork
sudo apt-get install libapache2-mod-xsendfile
2010-09-07 13:08:23 +00:00
2010-12-24 10:31:44 +00:00