Peer Pigeon
Useful Links for Peer Pigeon
- droopy.ecs.soton.ac.uk - Local Peer Pigeon Server
- Peer Pigeon Blog
- Required GEMs List for PeerPigeon
- BackgrounDRb Documentation - A plugin for Ruby-on-Rails that allows you to schedule cron jobs to save the serve blocking while processing requests.
Experience setting up my copy of PeerPigeon
I have recently got PeerPigeon up a running on my Debian Laptop. Here is the rough guide to what I did, it includes installing some packages that you are probably like to have installed. You will need root or sudo access to do most of these things. (Make sure that the svn is chowned back to your user account).
- Install gcc and some additional libraries that are required to install some GEMs:
apt-get install gcc libstdc++2.10-dev libstdc++2.10-glibc2.2
- Install Ruby development library:
apt-get install ruby1.8-dev
- Install MySQL:
apt-get install mysql-server mysql-common
- Install MySQL for Ruby library:
apt-get install libmysql-ruby1.8
- Install subversion:
apt-get install subversion
- Checkout the SVN from UGForge, copy this into your directory for SVNs, (e.g. /var/svn-repos/).
- Use this database.yml file and replace the usernames as passwords appropriately and place in the project's config directory (e.g. /var/svn-repos/peerpigeon/peerpigeon/config/).
- Create the databases peerpigeon_developmment and peerpigeon_production in mysql.
- Create a email.yml like this one and place in the project's config directory, (e.g. /var/svn-repos/peerpigeon/peerpigeon/config/). This file assumes that your server is on a network with and smtp server. Otherwise make sure you specify the domain of the server.
- Install Rails GEM:
gem install -v=1.2.3 rails
- Install the following GEMs: Chronic, ruby-units, slave, rubyzips, daemons, fastthread, mongrel, using the following commands:
gem install <gem>
The other GEMs listed in the GEMs list should also be installed as dependencies of these GEMs and the Rails GEM. - Start BackgrounDRb plugin:
ruby script/backgrounddb start
You must be in the in the project's root directory, (e.g. /var/svn-repos/peerpigeon/peerpigeon/). - Now migrate the database from the project's root directory (e.g. /var/svn-repos/peerpigeon/peerpigeon) using the command:
rake db:migrate
At this point there should be no error and the tables should be created correctly in the peerpigeon_development database. - To start running the mongrel webserver run the following command from the project's root directory (e.g. /var/svn-repos/peerpigeon/peerpigeon/):
ruby script/server
- Now test the webserver by loading a web browser and typing in http://localhost:3000/