~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to doc/setup/install_proc.txt

  • Committer: mattgiuca
  • Date: 2008-07-15 07:19:34 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:875
Added "migrations" directory, which contains incremental database update
    scripts.
Updated users.sql, uniqueness key on offering table.
Added migration matching this update to the migrations directory. Mm handy!

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Installation Procedure for IVLE
 
2
# ===============================
 
3
 
 
4
# Target Platform: Ubuntu 8.04
 
5
#
 
6
# IMPORTANT: This is NOT a shell script. It has interactive sections and
 
7
# things that need to be customized.
 
8
# It is written like a shell script so it can be mostly cut-and-pasted into
 
9
# the shell, but it can't simply be executed.
 
10
 
 
11
# While other install guides in this package are generic, this one is very
 
12
# specific to our intended configuration. It will be very helpful if trying to
 
13
# set up IVLE on Ubuntu 8.04 or higher; less helpful for other platforms.
 
14
# This refers to ivle.conf, also included.
 
15
#
 
16
# Author: Matt Giuca
 
17
# Date: 29/1/2008
 
18
 
 
19
##########################################################################
 
20
# Apt packages
 
21
##########################################################################
 
22
sudo apt-get install subversion build-essential debootstrap             \
 
23
                     apache2 libapache2-mod-python libapache2-svn       \
 
24
                     python2.5-dev python-svn python-webpy python-cjson \
 
25
                     postgresql python-pygresql php5 php5-pgsql         \
 
26
                     python-docutils python-epydoc python-ldap
 
27
 
 
28
##########################################################################
 
29
# Configure postgres
 
30
##########################################################################
 
31
 
 
32
# Set the postgres user's postgres password
 
33
sudo -u postgres psql template1
 
34
# At the prompt type (substituting <***password***> with a real one).
 
35
ALTER USER postgres WITH ENCRYPTED PASSWORD '<***password***>';
 
36
\q
 
37
 
 
38
##########################################################################
 
39
# Installing ivle
 
40
##########################################################################
 
41
#
 
42
# Check out the IVLE trunk
 
43
 
 
44
svn co https://ivle.svn.sourceforge.net/svnroot/ivle/trunk ivle_svn
 
45
cd ivle_svn
 
46
 
 
47
# Create a postgres database
 
48
# (only need the first line if it was previously created and is now changed)
 
49
sudo -u postgres dropdb ivle
 
50
sudo -u postgres createdb ivle
 
51
sudo -u postgres psql -d ivle < userdb/users.sql
 
52
 
 
53
# Set up IVLE
 
54
./setup.py listmake
 
55
./setup.py config
 
56
 
 
57
# "Root directory" - type "/" or "/ivle" (without the quotes)
 
58
# "UID of web server process" - 1000 at this stage (informatics)
 
59
# Leave others default.
 
60
# Note: This will cause IVLE to get installed to /opt/ivle
 
61
 
 
62
sudo ./setup.py build
 
63
sudo ./setup.py install
 
64
 
 
65
# Make the directory containing the svn auth.
 
66
# Make sure it is owned by www-data.
 
67
sudo mkdir /opt/ivle/svn
 
68
sudo chown -R www-data:www-data /opt/ivle/svn
 
69
 
 
70
# Make the "repositories" and "sessions" directories in the home.
 
71
# Make sure they are owned by www-data.
 
72
cd /home/informatics
 
73
sudo mkdir repositories sessions
 
74
sudo chown -R www-data:www-data repositories sessions
 
75
 
 
76
cd /home/informatics/ivle_svn
 
77
 
 
78
# Create a user
 
79
sudo ./makeuser.py [OPTIONS] <login> 'Firstname Lastname' <rolenm> -p <password>
 
80
# role = guest/student/tutor/lecturer/admin
 
81
 
 
82
# Configure the Apache HTTP server
 
83
sudo cp doc/setup/ivle-both.conf /etc/apache2/sites-available/ivle
 
84
# MODIFY the first few lines so it is specific to your server.
 
85
# * Change ServerAdmin and ServerName (for error reporting).
 
86
# * Inside the first VirtualHost block, there are two ServerNames
 
87
#   (localhost and public.localhost). You must change these to the domains
 
88
#   for regular IVLE and published-browsing IVLE respectively.
 
89
# * Inside the second VirtualHost block, there is one ServerName
 
90
#   (svn.localhost). You must change this to the domain for svn access.
 
91
# * Change all paths beginning with /opt/ivle or /home/informatics to the
 
92
#   locations you have installed things in.
 
93
sudo vim /etc/apache2/sites-available/ivle
 
94
 
 
95
# Replace the default with the IVLE site.
 
96
sudo a2dissite default
 
97
sudo a2ensite ivle
 
98
 
 
99
# Restart Apache.
 
100
sudo /etc/init.d/apache2 restart
 
101
 
 
102
# Make sure the 3 domains given in Apache conf all lookup to your server.
 
103
# (By default these are localhost, public.localhost and svn.localhost).
 
104
# For testing purposes, this can be done by editing /etc/hosts, for example:
 
105
# 127.0.0.1     svn.localhost public.localhost
 
106
sudo vim /etc/hosts
 
107
 
 
108
##########################################################################
 
109
# User management server: usrmgt-server
 
110
##########################################################################
 
111
# To start the user management server:
 
112
cd /opt/ivle/scripts
 
113
sudo ./usrmgt-server <port> <usrmgt-password>
 
114
# usrmgt-password is the password entered in setup.py config (usrmgt_magic)
 
115
# Note that the port number and usrmgt password are recorded in
 
116
# the automatically created init.d script: doc/setup/usrmgt-server.init
 
117
 
 
118
# To run it at boot time:
 
119
sudo cp doc/setup/usrmgt-server.init /etc/init.d/usrmgt-server
 
120
sudo chown root:root /etc/init.d/usrmgt-server
 
121
sudo chmod 700 /etc/init.d/usrmgt-server  # so world can't read database magic
 
122
sudo update-rc.d usrmgt-server defaults 99  # create symlinks in /etc/rc*.d
 
123
 
 
124
##########################################################################
 
125
# Setting up phpBB Forum in IVLE
 
126
##########################################################################
 
127
# This should all be run from the SVN directory
 
128
 
 
129
# Create a postgres database
 
130
# (only need the first line if it was previously created and is now changed)
 
131
sudo -u postgres dropdb ivle_forum
 
132
sudo -u postgres createdb ivle_forum
 
133
sudo -u postgres psql -d ivle_forum < userdb/forum_schema.sql
 
134
sudo -u postgres psql -d ivle_forum < userdb/forum_data.sql
 
135
 
 
136
#Change to the installed IVLE directory
 
137
cd /opt/ivle
 
138
# Fix permissions for install
 
139
cd www/php/phpBB3
 
140
# At very minimum you apache user must be able to write to
 
141
# cache/ files/ store/ images/avatars/upload config.php
 
142
sudo chown -R www-data:www-data .
 
143
 
 
144
##########################################################################
 
145
# Installing Pound reverse proxy (optional)
 
146
##########################################################################
 
147
 
 
148
sudo apt-get install pound
 
149
 
 
150
# edit /etc/default/pound so that the line reading
 
151
#     startup=0
 
152
# instead reads
 
153
#     startup=1
 
154
#
 
155
# copy pound.cfg to /etc/pound/pound.cfg
 
156
# edit IP addresses in pound.cfg