ChiliProject is not maintained anymore. Please be advised that there will be no more updates.

We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.

Installation

Version 40 (Enno Gröper, 2013-04-01 04:07 pm)

1 30 Enno Gröper
h1. Installation of ChiliProject
2 1
3 1
{{>toc}}
4 1
5 2 Enno Gröper
ChiliProject should run on most systems as long as Ruby is available on this platform.
6 1
7 36 Enno Gröper
* [[Installation on Linux|Linux]] — Linux is the preferred plattform for ChiliProject. 
8 36 Enno Gröper
Specific guides exist for [[Installation_on_Ubuntu_10_10|Ubuntu]], [[Installation on Debian Squeeze|Debian]], [[Installation_on_OpenSUSE_11_3|OpenSUSE]], and [[Installation on CentOS 5|CentOS]].
9 2 Enno Gröper
* [[Installation on Windows|Windows]]
10 2 Enno Gröper
* [[Installation on OSX|Mac OS X]] and [[Installation on OSX Server|Mac OS X Server]]
11 2 Enno Gröper
* [[Installation_on_FreeBSD|FreeBSD]]
12 2 Enno Gröper
* [[Installation_on_Solaris|Solaris]]
13 1
14 1
h2. Which version to choose
15 1
16 35 Enno Gröper
It is recommended that you use the latest @stable@ release of ChiliProject for production deployments.  Although we work hard on keeping the whole [[ChiliProject Repository|code base]] stable, the @master@ and @unstable@ branches might break from time to time, so use them only if you are willing to engage very closely with the inner workings of ChiliProject.
17 34 Enno Gröper
18 34 Enno Gröper
Please refer to the [[release schedule]] for more information about existing and planned releases.
19 34 Enno Gröper
20 34 Enno Gröper
{{include(Requirements)}}
21 7 Enno Gröper
22 7 Enno Gröper
h2. Installation
23 7 Enno Gröper
24 11 Enno Gröper
# [[Download|Get the ChiliProject source code]] by either downloading a packaged release or checking out the code repository. Common sources are
25 7 Enno Gröper
#* Cloning the Git repository on https://github.com/chiliproject/chiliproject
26 7 Enno Gröper
  <pre>
27 7 Enno Gröper
git clone git://github.com/chiliproject/chiliproject.git
28 7 Enno Gröper
cd chiliproject
29 14 Enno Gröper
git checkout stable
30 7 Enno Gröper
</pre>
31 7 Enno Gröper
#* Downloading a release from "the Files section":/projects/chiliproject/files
32 39 Enno Gröper
# *(ChiliProject 2.x only)* *Install the required gems using bundler*
33 39 Enno Gröper
#* Run the command @bundle install@ in the root of ChiliProject. This will download and check that all of the required rubygems are installed. See our documentation for [[Bundler|setting up bundler]] for some additional settings.
34 7 Enno Gröper
# *Create an empty database* and an accompanying user named @chiliproject@ for example.
35 7 Enno Gröper
#*  MySQL < 5.0.2
36 7 Enno Gröper
  <pre>
37 7 Enno Gröper
create database chiliproject character set utf8;
38 7 Enno Gröper
grant all privileges on chiliproject.* to 'chiliproject'@'localhost' identified by 'my_password';
39 7 Enno Gröper
</pre>
40 7 Enno Gröper
#* MySQL >= 5.0.2
41 7 Enno Gröper
  <pre>
42 7 Enno Gröper
create database chiliproject character set utf8;
43 7 Enno Gröper
create user 'chiliproject'@'localhost' identified by 'my_password';
44 7 Enno Gröper
grant all privileges on chiliproject.* to 'chiliproject'@'localhost';
45 7 Enno Gröper
</pre>
46 7 Enno Gröper
#* PostgreSQL
47 7 Enno Gröper
  <pre>
48 7 Enno Gröper
CREATE ROLE chiliproject LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
49 7 Enno Gröper
CREATE DATABASE chiliproject WITH ENCODING='UTF8' OWNER=chiliproject;
50 7 Enno Gröper
</pre>
51 37 Enno Gröper
# Copy @config/database.yml.example@ to @config/database.yml@ and edit this file in order to configure your database settings for "production" environment. Valid examples are:
52 7 Enno Gröper
#* MySQL
53 7 Enno Gröper
  <pre>
54 7 Enno Gröper
production:
55 7 Enno Gröper
  adapter: mysql
56 7 Enno Gröper
  database: chiliproject
57 7 Enno Gröper
  host: localhost
58 7 Enno Gröper
  port: 3306
59 7 Enno Gröper
  username: chiliproject
60 7 Enno Gröper
  password: my_password
61 7 Enno Gröper
</pre>
62 7 Enno Gröper
#* PostgreSQL
63 7 Enno Gröper
  <pre>
64 7 Enno Gröper
production:
65 7 Enno Gröper
  adapter: postgresql
66 7 Enno Gröper
  database: chiliproject
67 7 Enno Gröper
  host: localhost
68 7 Enno Gröper
  port: 5432
69 7 Enno Gröper
  username: chiliproject
70 7 Enno Gröper
  password: my_password
71 7 Enno Gröper
  encoding: utf8
72 7 Enno Gröper
</pre>
73 7 Enno Gröper
#* SQLite
74 7 Enno Gröper
  <pre>
75 7 Enno Gröper
production:
76 7 Enno Gröper
  adapter: sqlite3
77 7 Enno Gröper
  database: db/production.db
78 7 Enno Gröper
</pre>
79 23 Enno Gröper
# Copy @config/configuration.yml.example@ to @config/configuration.yml@ and edit this file for your system's environment. You can check the comments in the file and on [[Configuration File]] for all of the options.
80 7 Enno Gröper
# Generate a *session store secret*.
81 40 Enno Gröper
  <pre>bundle exec rake generate_session_store</pre>
82 7 Enno Gröper
# *Create the basic database structure* by running the following command under the application root directory:
83 40 Enno Gröper
  <pre>RAILS_ENV=production bundle exec rake db:migrate
84 7 Enno Gröper
</pre>It will create the database tables and an administrator account.
85 7 Enno Gröper
# Insert *default configuration data* into the database, by running the following command:
86 40 Enno Gröper
  <pre>RAILS_ENV=production bundle exec rake redmine:load_default_data
87 7 Enno Gröper
</pre>This step is optional but *highly recommended*. It will load default roles, trackers, statuses, workflows and enumerations. If you choose to skip this step, you can later define your own configuration from scratch.
88 7 Enno Gröper
# *Setting up permissions*
89 7 Enno Gröper
  _Windows users have to skip this step_
90 7 Enno Gröper
  The user who runs ChiliProject must have write permission on the following sub-directories: @files@, @log@, @tmp@, and @public/plugin_assets@. So assuming you run ChiliProject with a user called @chiliproject@ you need to setup the following permissions: <pre>
91 7 Enno Gröper
mkdir tmp public/plugin_assets
92 7 Enno Gröper
sudo chown -R chiliproject:chiliproject files log tmp public/plugin_assets
93 7 Enno Gröper
sudo chmod -R 755 files log tmp public/plugin_assets
94 7 Enno Gröper
</pre>
95 7 Enno Gröper
# *Test the installation* by running the bundled Webrick web server:
96 40 Enno Gröper
  <pre>bundle exec script/server -e production
97 7 Enno Gröper
</pre>Once Webrick has started, point your browser to http://localhost:3000/. You should now see the application welcome page.
98 9 Enno Gröper
  %(smallimportant)Webrick is not suitable for normal use, please only use Webrick for testing that the installation up to this point is functional. It is not recommended to use Webrick for anything other than development or testing. Use one of the many other guides in this wiki to setup ChiliProject with a real application server like "Phusion Passenger (mod_rails) ":http://www.modrails.com/ or "Thin":http://code.macournoyer.com/thin/.%
99 7 Enno Gröper
# Use the default administrator account to *log in*:
100 7 Enno Gröper
#* *Login:* admin
101 7 Enno Gröper
#* *Password:* admin
102 7 Enno Gröper
# You can now go to %(button)Administration% to *modify the basic application settings*. Have a look at the [[Using ChiliProject|user guide]] for information on how to configure your new ChiliProject server.