rdex-server: more docs
[rdex:server.git] / README
1 rdex -- reaction-diffusion explorer
2 ===================================
3
4 Software Requirements
5 ---------------------
6
7   * Linux (maybe works on other OS's too)
8   * WSGI web server (apache2 with mod_wsgi works well)
9   * MySQL database
10   * Python imaging library
11   * Python mysql library
12
13 For example, on a minimal Lenny vserver, install these packages:
14   apache2 libapache2-mod-wsgi mysql-server python-imaging python-mysqldb
15
16
17 Installation And Configuration
18 ------------------------------
19
20 This is a rough description of my setup, no proper installation instructions yet.
21
22 apache2 config (with 'rdex' in /etc/hosts):
23
24     <VirtualHost *:80>
25         ServerName rdex
26         ServerAdmin you@yourhost
27         # root html
28         DocumentRoot /home/claude/www/rdex/public
29         # beta server
30         Alias /beta/images /home/claude/www/rdex/beta/data/images
31         Alias /beta/style /home/claude/www/rdex/beta/data/style
32         WSGIScriptAlias /beta /home/claude/www/rdex/beta/code/rdex.wsgi
33         # rc1 server
34         Alias /rc1/images /home/claude/www/rdex/rc1/data/images
35         Alias /rc1/style /home/claude/www/rdex/rc1/data/style
36         WSGIScriptAlias /rc1 /home/claude/www/rdex/rc1/code/rdex.wsgi
37         # root html
38         <Directory /home/claude/www/rdex/public>
39                 Options Indexes FollowSymLinks MultiViews
40                 AllowOverride None
41                 Order allow,deny
42                 allow from all
43         </Directory>
44         ErrorLog /var/log/apache2/rdex_error.log
45         LogLevel warn
46         CustomLog /var/log/apache2/rdex_access.log combined
47     </VirtualHost>
48
49 rdex_config.py (change according to your setup):
50
51     image_dir = '/home/claude/www/rdex/beta/data/images' # www-data writeable
52     image_url = '/beta/images'
53     style_url = '/beta/style'
54     database_host = 'localhost'
55     database_user = 'rdex'
56     database_pass = '****'
57     database_db   = 'rdex'
58
59 database initialisation (once per rdex installation):
60
61     $ mysql -u root -p
62     > CREATE USER 'rdex'@'localhost' IDENTIFIED BY '****';
63     > CREATE DATABASE rdex;
64     > GRANT ALL ON rdex.* TO 'rdex'@'localhost' IDENTIFIED BY '****';
65     $ mysql -u rdex -p
66     > CONNECT rdex;
67     > DROP TABLE rdex;
68     $ python -i rdex_initdb.py
69     > create()
70
71 database configuration (for complex queries):
72
73     /etc/mysql/my.cnf :: thread_stack = 1024K
74
75
76 Legal
77 -----
78
79 rdex -- reaction-diffusion explorer
80 Copyright (C) 2008,2009  Claude Heiland-Allen <claudiusmaximus@goto10.org>
81
82 This program is free software: you can redistribute it and/or modify
83 it under the terms of the GNU Affero General Public License as published by
84 the Free Software Foundation, either version 3 of the License, or
85 (at your option) any later version.
86
87 This program is distributed in the hope that it will be useful,
88 but WITHOUT ANY WARRANTY; without even the implied warranty of
89 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
90 GNU Affero General Public License for more details.
91
92 You should have received a copy of the GNU Affero General Public License
93 along with this program.  If not, see <http://www.gnu.org/licenses/>.