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

« back to all changes in this revision

Viewing changes to doc/setup/install_proc.txt

  • Committer: dcoles
  • Date: 2008-07-03 04:20:54 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:803
Setup: Modularised setup.py so it is now no longer over 1000 lines. This should 
allow us to get in there and tidy up each module much easier. Also removed 
updatejails since this functionality seems to be duplicated with remakeuser.py 
and remakealluser.py scripts.

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