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 55 (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 55 Enno Gröper
Specific guides exist for:
9 55 Enno Gröper
** Ubuntu ([[Installation_on_Ubuntu_10_10|10.10 Maverick Meerkat]]|[[Installation_on_Ubuntu_11_04_v2|11.04 Natty Narwhal]]|[[Installation_on_Ubuntu_12_04_v3|12.04 Precise Pangolin]])
10 55 Enno Gröper
** [[Installation on Debian Squeeze|Debian]]
11 55 Enno Gröper
** [[Installation_on_OpenSUSE_11_3|OpenSUSE]]
12 55 Enno Gröper
** [[Installation on CentOS 5|CentOS]]
13 55 Enno Gröper
** If you are using Gentoo, you might be interested in this "Gentoo bug":https://bugs.gentoo.org/show_bug.cgi?id=374789 or "Overlay":http://groeper-berlin.de/Gentoo/, they both provide a (the same) ebuild for ChiliProject
14 55 Enno Gröper
** Arch Linux users might consider "this wiki page":https://wiki.archlinux.org/index.php/Chiliproject
15 2 Enno Gröper
* [[Installation on Windows|Windows]]
16 2 Enno Gröper
* [[Installation_on_FreeBSD|FreeBSD]]
17 54 Enno Gröper
* Mac OS X and Mac OS X Server
18 54 Enno Gröper
* Solaris
19 1
20 1
h2. Which version to choose
21 1
22 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.
23 34 Enno Gröper
24 34 Enno Gröper
Please refer to the [[release schedule]] for more information about existing and planned releases.
25 34 Enno Gröper
26 34 Enno Gröper
{{include(Requirements)}}
27 7 Enno Gröper
28 7 Enno Gröper
h2. Installation
29 7 Enno Gröper
30 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
31 7 Enno Gröper
#* Cloning the Git repository on https://github.com/chiliproject/chiliproject
32 7 Enno Gröper
  <pre>
33 49 Enno Gröper
git clone -b stable git://github.com/chiliproject/chiliproject.git
34 14 Enno Gröper
cd chiliproject
35 7 Enno Gröper
</pre>
36 7 Enno Gröper
#* Downloading a release from "the Files section":/projects/chiliproject/files
37 48 Enno Gröper
# *Install the required gems using bundler*
38 47 Enno Gröper
#* Run the command @bundle install --without test development@ in the root of ChiliProject. This will download and check that all of the required rubygems are installed.
39 41 Enno Gröper
%(smallnote)Not all dependencies are required, especially not all database adapters. See our documentation for [[Bundler|setting up bundler]] and chose the settings that are appropriate for you.%
40 7 Enno Gröper
# *Create an empty database* and an accompanying user named @chiliproject@ for example.
41 7 Enno Gröper
#*  MySQL < 5.0.2
42 7 Enno Gröper
  <pre>
43 7 Enno Gröper
create database chiliproject character set utf8;
44 7 Enno Gröper
grant all privileges on chiliproject.* to 'chiliproject'@'localhost' identified by 'my_password';
45 7 Enno Gröper
</pre>
46 7 Enno Gröper
#* MySQL >= 5.0.2
47 7 Enno Gröper
  <pre>
48 7 Enno Gröper
create database chiliproject character set utf8;
49 50 Enno Gröper
create user 'chiliproject' identified by 'my_password';
50 7 Enno Gröper
grant all privileges on chiliproject.* to 'chiliproject'@'localhost';
51 7 Enno Gröper
</pre>
52 7 Enno Gröper
#* PostgreSQL
53 7 Enno Gröper
  <pre>
54 7 Enno Gröper
CREATE ROLE chiliproject LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
55 7 Enno Gröper
CREATE DATABASE chiliproject WITH ENCODING='UTF8' OWNER=chiliproject;
56 7 Enno Gröper
</pre>
57 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:
58 7 Enno Gröper
#* MySQL
59 45 Enno Gröper
  %(smallnote)Depending on your chosen adapter in step 2, you have to either enter @mysql@ or @mysql2@ as the adapter name.%<pre>
60 7 Enno Gröper
production:
61 7 Enno Gröper
  adapter: mysql
62 7 Enno Gröper
  database: chiliproject
63 7 Enno Gröper
  host: localhost
64 7 Enno Gröper
  port: 3306
65 7 Enno Gröper
  username: chiliproject
66 7 Enno Gröper
  password: my_password
67 7 Enno Gröper
</pre>
68 7 Enno Gröper
#* PostgreSQL
69 7 Enno Gröper
  <pre>
70 7 Enno Gröper
production:
71 7 Enno Gröper
  adapter: postgresql
72 7 Enno Gröper
  database: chiliproject
73 7 Enno Gröper
  host: localhost
74 7 Enno Gröper
  port: 5432
75 7 Enno Gröper
  username: chiliproject
76 7 Enno Gröper
  password: my_password
77 7 Enno Gröper
  encoding: utf8
78 7 Enno Gröper
</pre>
79 7 Enno Gröper
#* SQLite
80 7 Enno Gröper
  <pre>
81 7 Enno Gröper
production:
82 7 Enno Gröper
  adapter: sqlite3
83 7 Enno Gröper
  database: db/production.db
84 7 Enno Gröper
</pre>
85 46 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.
86 7 Enno Gröper
# Generate a *session store secret*.
87 40 Enno Gröper
  <pre>bundle exec rake generate_session_store</pre>
88 7 Enno Gröper
# *Create the basic database structure* by running the following command under the application root directory:
89 40 Enno Gröper
  <pre>RAILS_ENV=production bundle exec rake db:migrate
90 7 Enno Gröper
</pre>It will create the database tables and an administrator account.
91 7 Enno Gröper
# Insert *default configuration data* into the database, by running the following command:
92 40 Enno Gröper
  <pre>RAILS_ENV=production bundle exec rake redmine:load_default_data
93 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.
94 7 Enno Gröper
# *Setting up permissions*
95 7 Enno Gröper
  _Windows users have to skip this step_
96 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>
97 44 Enno Gröper
mkdir -p tmp public/plugin_assets
98 7 Enno Gröper
sudo chown -R chiliproject:chiliproject files log tmp public/plugin_assets
99 7 Enno Gröper
sudo chmod -R 755 files log tmp public/plugin_assets
100 7 Enno Gröper
</pre>
101 7 Enno Gröper
# *Test the installation* by running the bundled Webrick web server:
102 40 Enno Gröper
  <pre>bundle exec script/server -e production
103 42 Enno Gröper
</pre>
104 42 Enno Gröper
Windows users have to specify to use ruby:<pre>bundle exec ruby script/server -e production
105 42 Enno Gröper
</pre>
106 42 Enno Gröper
Once Webrick has started, point your browser to http://localhost:3000/. You should now see the application welcome page.
107 43 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/, "Unicorn":http://unicorn.bogomips.org/, or "Thin":http://code.macournoyer.com/thin/.%
108 7 Enno Gröper
# Use the default administrator account to *log in*:
109 7 Enno Gröper
#* *Login:* admin
110 7 Enno Gröper
#* *Password:* admin
111 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.