Mercurial > kallithea
comparison docs/installation.rst @ 568:5f481e4e888b
updated docs, added sphinx build
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 10 Oct 2010 17:24:41 +0200 |
parents | |
children | a60cd29ba7e2 |
comparison
equal
deleted
inserted
replaced
567:80dc0a23edf7 | 568:5f481e4e888b |
---|---|
1 .. _installation: | |
2 | |
3 Installation | |
4 ============ | |
5 | |
6 ``RhodeCode`` is written entirely in Python, but in order to use it's full | |
7 potential there are some third-party requirements. When RhodeCode is used | |
8 together with celery You have to install some kind of message broker, | |
9 recommended one is rabbitmq to make the async tasks work. | |
10 For installation instructions You can visit: | |
11 http://ask.github.com/celery/getting-started/index.html. | |
12 | |
13 Of course RhodeCode works in sync mode also, then You don't have to install | |
14 any third party apps. Celery will give You large speed improvement when using | |
15 many big repositories. If You plan to use it for 2 or 3 small repositories, it | |
16 will work just fine without celery running. | |
17 | |
18 After You decide to Run it with celery make sure You run celeryd and | |
19 message broker together with the application. | |
20 | |
21 Requirements for Celery | |
22 ----------------------- | |
23 | |
24 **Message Broker** | |
25 | |
26 - preferred is `RabbitMq <http://www.rabbitmq.com/>`_ | |
27 - possible other is `Redis <http://code.google.com/p/redis/>`_ | |
28 | |
29 | |
30 Install from Cheese Shop | |
31 ------------------------ | |
32 | |
33 Easiest way to install ``rhodecode`` is to run:: | |
34 | |
35 easy_install rhodecode | |
36 | |
37 Or:: | |
38 | |
39 pip install rhodecode | |
40 | |
41 If you prefer to install manually simply grab latest release from | |
42 http://pypi.python.org/pypi/rhodecode, decompres archive and run:: | |
43 | |
44 python setup.py install | |
45 | |
46 | |
47 **Setting up the application** | |
48 I recommend to run the RhodeCode in separate virtualenv. | |
49 See http://pypi.python.org/pypi/virtualenv for more details. | |
50 | |
51 - run `paster make-config RhodeCode production.ini` make specific application | |
52 config, | |
53 - run `paster setup-app production.ini` makes the database, and propagates it | |
54 with default data, In this step You have to provide admin username and repositories | |
55 location, it can be a new location or with existing ones in that case RhodeCode | |
56 will scann all new found repos and put it into database. | |
57 - run `paster runserver production.ini` runs the server. | |
58 | |
59 | |
60 **STEP BY STEP EXAMPLE INSTRUCTION** | |
61 | |
62 | |
63 - Assuming You have setup virtualenv create one using | |
64 `virtualenv --no-site-packages /var/www/rhodecode-venv` | |
65 this will install new virtual env into /var/www/rhodecode-venv. | |
66 - Activate the virtualenv by running | |
67 `source activate /var/www/rhodecode-venv/bin/activate` | |
68 - Make a folder for rhodecode somewhere on the filesystem for example | |
69 /var/www/rhodecode | |
70 - Run easy_install rhodecode, this will install rhodecode together with pylons | |
71 and all other required python libraries | |
72 - Run `paster make-config RhodeCode production.ini` in order to install | |
73 the application config. | |
74 - Run `paster setup-app production.ini` it should create all needed tables | |
75 and an admin account. Also make sure You specify correct path to repositories. | |
76 You can either use a new location of one with already exising ones. RhodeCode | |
77 will simply add all new found repositories to it's database. | |
78 - Remember that the given path for mercurial repositories must be write | |
79 accessible for the application. It's very important since RhodeCode web interface | |
80 will work even without such an access but, when trying to do a push it's eventually | |
81 failed with permission denied. | |
82 - Run `paster serve production.ini` | |
83 the app should be available at the 127.0.0.1:5000 | |
84 - Use admin account you created to login. | |
85 - Default permissions on each repository is read, and owner is admin. So remember | |
86 to update these. | |
87 | |
88 - All needed configs are inside rhodecode sources ie. celeryconfig.py, | |
89 development.ini, production.ini You can configure the email, ports, loggers, | |
90 workers from there. | |
91 - For full text search You can either put crontab entry for | |
92 `python /var/www/rhodecode/rhodecode/lib/indexers/daemon.py incremental <path_to_repos>` | |
93 or run indexer from admin panel. This will scann the repos given in the | |
94 application setup or given path for daemon.py and each scann in incremental | |
95 mode will scan only changed files. |