322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
1 |
# Installation Procedure for IVLE |
2 |
# =============================== |
|
3 |
||
797
by dcoles
Setup: Addition of an automatic jail builder. This means we no longer are |
4 |
# Target Platform: Ubuntu 8.04 |
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
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 |
|
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
13 |
# set up IVLE on Ubuntu 8.04 or higher; less helpful for other platforms. |
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
14 |
# This refers to ivle.conf, also included. |
15 |
# |
|
16 |
# Author: Matt Giuca |
|
17 |
# Date: 29/1/2008 |
|
18 |
||
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
19 |
########################################################################## |
20 |
# Apt packages |
|
21 |
########################################################################## |
|
1051
by wagrant
doc/setup/install_proc.txt: Refactor, and install rsync to make things |
22 |
sudo apt-get install rsync subversion build-essential debootstrap \ |
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
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 |
|
563
by mattgiuca
install_proc: Notes on apt-get for epydoc and docutils. |
27 |
|
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
28 |
########################################################################## |
29 |
# Configure postgres |
|
30 |
########################################################################## |
|
444
by drtomc
dispatch: Change the session timeout to 24 hours (there doesn't seem to be |
31 |
|
1075
by matt.giuca
Reverted revisions 1059 and 1069 - renaming the DB user from 'postgres' to |
32 |
# Set the postgres user's postgres password |
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
33 |
# At the prompt type (substituting <***password***> with a real one). |
1075
by matt.giuca
Reverted revisions 1059 and 1069 - renaming the DB user from 'postgres' to |
34 |
sudo -u postgres psql -c "ALTER USER postgres WITH ENCRYPTED PASSWORD '<***password***>'" |
444
by drtomc
dispatch: Change the session timeout to 24 hours (there doesn't seem to be |
35 |
|
480
by stevenbird
doc/setup/install_proc.txt |
36 |
########################################################################## |
444
by drtomc
dispatch: Change the session timeout to 24 hours (there doesn't seem to be |
37 |
# Installing ivle |
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
38 |
########################################################################## |
39 |
# |
|
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
40 |
# Check out the IVLE trunk |
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
41 |
|
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
42 |
svn co https://ivle.svn.sourceforge.net/svnroot/ivle/trunk ivle_svn |
43 |
cd ivle_svn |
|
480
by stevenbird
doc/setup/install_proc.txt |
44 |
|
444
by drtomc
dispatch: Change the session timeout to 24 hours (there doesn't seem to be |
45 |
# Create a postgres database |
494
by stevenbird
more cleanups of installation instructions based on silly misunderstandings |
46 |
# (only need the first line if it was previously created and is now changed) |
47 |
sudo -u postgres dropdb ivle |
|
1075
by matt.giuca
Reverted revisions 1059 and 1069 - renaming the DB user from 'postgres' to |
48 |
sudo -u postgres createdb ivle |
960
by dcoles
Install: Add the required command to enable PL/pgSQL for the IVLE database to |
49 |
sudo -u postgres createlang plpgsql ivle |
480
by stevenbird
doc/setup/install_proc.txt |
50 |
sudo -u postgres psql -d ivle < userdb/users.sql |
444
by drtomc
dispatch: Change the session timeout to 24 hours (there doesn't seem to be |
51 |
|
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
52 |
# Set up IVLE |
53 |
./setup.py listmake |
|
54 |
./setup.py config |
|
55 |
||
494
by stevenbird
more cleanups of installation instructions based on silly misunderstandings |
56 |
# "Root directory" - type "/" or "/ivle" (without the quotes) |
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
57 |
# "UID of web server process" - 1000 at this stage (informatics) |
58 |
# Leave others default. |
|
59 |
# Note: This will cause IVLE to get installed to /opt/ivle |
|
60 |
||
1051
by wagrant
doc/setup/install_proc.txt: Refactor, and install rsync to make things |
61 |
sudo mkdir -p /home/informatics/{repositories/{users,groups},sessions,logs,jails,jailssrc} |
62 |
sudo chown -R www-data:www-data /home/informatics/{repositories,sessions,logs} |
|
63 |
||
1070
by matt.giuca
Added -j to first build to build an entire jail rather than just rebuild. |
64 |
# -j is required to rebuild all jails, not just do an update |
65 |
sudo ./setup.py build -j |
|
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
66 |
sudo ./setup.py install |
67 |
||
761
by mattgiuca
doc/setup/install_proc.txt: Many fixes and additions. |
68 |
# Make the directory containing the svn auth. |
69 |
# Make sure it is owned by www-data. |
|
745
by dcoles
Docs: The '/opt/ivle/svn' directory has to be created before you can add a user |
70 |
sudo mkdir /opt/ivle/svn |
71 |
sudo chown -R www-data:www-data /opt/ivle/svn |
|
72 |
||
893
by dcoles
Dispatch: Now attempts to log unhandled exceptions to a log directory specified |
73 |
# Make the "repositories", "sessions" and "logs" directories in the home. |
761
by mattgiuca
doc/setup/install_proc.txt: Many fixes and additions. |
74 |
# Make sure they are owned by www-data. |
75 |
||
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
76 |
# Create a user |
480
by stevenbird
doc/setup/install_proc.txt |
77 |
sudo ./makeuser.py [OPTIONS] <login> 'Firstname Lastname' <rolenm> -p <password> |
78 |
# role = guest/student/tutor/lecturer/admin |
|
79 |
||
80 |
# Configure the Apache HTTP server |
|
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
81 |
sudo cp doc/setup/ivle-both.conf /etc/apache2/sites-available/ivle |
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
82 |
# MODIFY the first few lines so it is specific to your server. |
761
by mattgiuca
doc/setup/install_proc.txt: Many fixes and additions. |
83 |
# * Change ServerAdmin and ServerName (for error reporting). |
84 |
# * Inside the first VirtualHost block, there are two ServerNames |
|
85 |
# (localhost and public.localhost). You must change these to the domains |
|
86 |
# for regular IVLE and published-browsing IVLE respectively. |
|
87 |
# * Inside the second VirtualHost block, there is one ServerName |
|
88 |
# (svn.localhost). You must change this to the domain for svn access. |
|
89 |
# * Change all paths beginning with /opt/ivle or /home/informatics to the |
|
90 |
# locations you have installed things in. |
|
827
by dcoles
Setup: More clean up of install_proc - looks like wgrant had the same idea! |
91 |
sudo vim /etc/apache2/sites-available/ivle |
821
by wagrant
install_proc.txt: Clean up, remove bad bits, use fewer bad practices, |
92 |
|
93 |
# Replace the default with the IVLE site. |
|
94 |
sudo a2dissite default |
|
95 |
sudo a2ensite ivle |
|
96 |
||
97 |
# Restart Apache. |
|
98 |
sudo /etc/init.d/apache2 restart |
|
322
by mattgiuca
Added doc/setup - a setup guide specific to our configuration. This is the |
99 |
|
761
by mattgiuca
doc/setup/install_proc.txt: Many fixes and additions. |
100 |
# Make sure the 3 domains given in Apache conf all lookup to your server. |
101 |
# (By default these are localhost, public.localhost and svn.localhost). |
|
102 |
# For testing purposes, this can be done by editing /etc/hosts, for example: |
|
828
by wagrant
install_proc.txt: Fix a couple of issues just introduced. |
103 |
# 127.0.0.1 svn.localhost public.localhost |
827
by dcoles
Setup: More clean up of install_proc - looks like wgrant had the same idea! |
104 |
sudo vim /etc/hosts |
105 |
||
517
by dcoles
forum: Added basic install documentation |
106 |
########################################################################## |
688
by apeel
setup.py now creates the /etc/init.d script for usrmgr-server, and install_proc.txt has instructions on installing it. |
107 |
# User management server: usrmgt-server |
108 |
########################################################################## |
|
109 |
||
796
by dcoles
Install: Fix minor typo in init script install steps so file is now copied to |
110 |
sudo cp doc/setup/usrmgt-server.init /etc/init.d/usrmgt-server |
688
by apeel
setup.py now creates the /etc/init.d script for usrmgr-server, and install_proc.txt has instructions on installing it. |
111 |
sudo chown root:root /etc/init.d/usrmgt-server |
1051
by wagrant
doc/setup/install_proc.txt: Refactor, and install rsync to make things |
112 |
sudo chmod +x /etc/init.d/usrmgt-server |
113 |
||
114 |
# To start it now: |
|
115 |
sudo /etc/init.d/usrmgt-server start |
|
116 |
||
117 |
# To run it at boot time: |
|
688
by apeel
setup.py now creates the /etc/init.d script for usrmgr-server, and install_proc.txt has instructions on installing it. |
118 |
sudo update-rc.d usrmgt-server defaults 99 # create symlinks in /etc/rc*.d |
119 |
||
120 |
########################################################################## |
|
517
by dcoles
forum: Added basic install documentation |
121 |
# Setting up phpBB Forum in IVLE |
122 |
########################################################################## |
|
643
by dcoles
forum: Removed config.php from repository - it's a file we'll create |
123 |
# This should all be run from the SVN directory |
624
by dcoles
forum: Removed the subsilver2 style and phpBB installer |
124 |
|
125 |
# Create a postgres database |
|
126 |
# (only need the first line if it was previously created and is now changed) |
|
127 |
sudo -u postgres dropdb ivle_forum |
|
1075
by matt.giuca
Reverted revisions 1059 and 1069 - renaming the DB user from 'postgres' to |
128 |
sudo -u postgres createdb ivle_forum |
624
by dcoles
forum: Removed the subsilver2 style and phpBB installer |
129 |
sudo -u postgres psql -d ivle_forum < userdb/forum_schema.sql |
130 |
sudo -u postgres psql -d ivle_forum < userdb/forum_data.sql |
|
131 |
||
132 |
#Change to the installed IVLE directory |
|
520
by dcoles
forum: Fixed setup.py to include forum files in install, disabled |
133 |
cd /opt/ivle |
517
by dcoles
forum: Added basic install documentation |
134 |
# Fix permissions for install |
135 |
cd www/php/phpBB3 |
|
624
by dcoles
forum: Removed the subsilver2 style and phpBB installer |
136 |
# At very minimum you apache user must be able to write to |
137 |
# cache/ files/ store/ images/avatars/upload config.php |
|
643
by dcoles
forum: Removed config.php from repository - it's a file we'll create |
138 |
sudo chown -R www-data:www-data . |
520
by dcoles
forum: Fixed setup.py to include forum files in install, disabled |
139 |
|
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
140 |
########################################################################## |
480
by stevenbird
doc/setup/install_proc.txt |
141 |
# Installing Pound reverse proxy (optional) |
483
by stevenbird
more cleanup of installation instructions; removed dapper-specific instructions as suggested by Matt Giuca |
142 |
########################################################################## |
143 |
||
369
by drtomc
Add stuff on installing and configuring pound. |
144 |
sudo apt-get install pound |
145 |
||
146 |
# edit /etc/default/pound so that the line reading |
|
147 |
# startup=0 |
|
148 |
# instead reads |
|
149 |
# startup=1 |
|
150 |
# |
|
151 |
# copy pound.cfg to /etc/pound/pound.cfg |
|
437
by stevenbird
added note that IP addresses in pound.cfg need to be edited |
152 |
# edit IP addresses in pound.cfg |