How to: Setup Redmine 2.1.4 on Ubuntu 12.10
Redmine is the best software package I’ve come across when dealing with software development and I highly recommend its use to everyone, however quite a few people have issues setting it up. Especially those who are new to Ruby or Rails. This guide walks you through the basics of setting it up on a fresh Ubuntu 12.10 installation.
- Install Ubuntu 12.10 (this guide uses Ubuntu Server 12.10 64-Bit).
I would recommend installing this on it’s own server or virtual machine. - Update the system
sudo apt-get update
sudo apt-get upgrade
If any kernel upgrades are required, this would be a good time to restart the server.
- Install the packages we will require, this may take some time as the list is quite long.
sudo apt-get install ruby rubygems libruby libapache2-mod-passenger ruby-dev zip unzip libmysqlclient-dev libmagickcore-dev libmagickwand-dev mysql-server mysql-client
You will be prompted for a MySQL root password. Usual decent password practices apply.
- Download Redmine v2.1.4 from RubyForge.
http://rubyforge.org/frs/?group_id=1850
You can download either the tar or zip version. Download the MD5 Sum of the file as well (it will have the same file name but with ‘.MD5′ at the end and will be quite small. wget http://rubyforge.org/frs/download.php/76495/redmine-2.1.4.tar.gz
wget http://rubyforge.org/frs/download.php/76495/redmine-2.1.4.tar.gz.md5
- Confirm the MD5 of the file you downloaded matches the one in the md5 file
md5sum redmine-2.1.4.tar.gz
cat redmine-2.1.4.tar.gz.md5
If the strings do not match, one of the two files is corrupted.
- Untar or Unzip the file and move the folder to an appropriate location
tar -xzvf redmine-2.1.4.tar.gz
unzip redmine-2.1.4.tar.gz
sudo mv redmine-2.1.4 /usr/local/share
cd /usr/local/share/redmine-2.1.4/
- Install appropriate gems
sudo gem install bundler
sudo gem install rdp-mysql2
- Install the Redmine ‘bundle’ without dev / test environments and other database components
sudo bundle install --without development test postgresql sqlite
- Create a MySQL user and Database for Redmine (using the local server)
In these steps *** should be replaced by a password different from the root account.
Connect to the MySQL Server Daemon: mysql -u root -p
Create the new user:
CREATE USER 'redmine'@'localhost' IDENTIFIED BY '***';
Create the new database:
CREATE DATABASE IF NOT EXISTS `redmine`;
Grant the user rights over the database:
GRANT ALL PRIVILEGES ON `redmine` . * TO 'redmine'@'localhost';
- Create the Database configuration file
sudo nano config/database.yml
Enter the following text, replacing your password as per above
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: ***
- Generate the session secret:
sudo rake generate_secret_token
- Create the empty Redmine Database structure
sudo RAILS_ENV=production rake db:migrate
- Populate the database with default data (optional: Only skip this step if you know what you’re doing in terms of configuring workflows / etc in Redmine)
sudo RAILS_ENV=production redmine:load_default_data
When prompted, select the appropriate language.
- Configure Apache
sudo nano /etc/apache2/sites-available/default
Delete all the existing data in the file and insert the following base config:
<Virtualhost *:80>
DocumentRoot /usr/local/share/redmine-2.1.4/public
<Directory /usr/local/share/redmine-2.1.4/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>
- Restart Apache2
sudo service apache2 restart
- Open Redmine: http://<server_IP>/
Default details:
Username – admin
Password – admin
Other steps you should take:
- Configure Redmine to send emails
- Enable the Ubuntu Firewall (UFW)
- Create a backup script that backs up uploaded files and the MySQL database
- Tweak the Apache2 configuration to be more secure
- Install the Nagios monitoring client
- Setup rsyslogd to log to a remote location
Depending on demand I may create some How To guides for the above.
How to: Setup Redmine 2.1.4 on Ubuntu 12.10
Posted by JD on 15 December 2012
Posted in: How to. Tagged: Apache, Apache2, Rails, Redmine, Redmine 2.1.4, Ruby, Ubuntu, Ubuntu Server, Ubuntu Server 12.10. 4 comments
Redmine is the best software package I’ve come across when dealing with software development and I highly recommend its use to everyone, however quite a few people have issues setting it up. Especially those who are new to Ruby or Rails. This guide walks you through the basics of setting it up on a fresh Ubuntu 12.10 installation.
Install Ubuntu 12.10 (this guide uses Ubuntu Server 12.10 64-Bit).
I would recommend installing this on it’s own server or virtual machine.
Update the system
sudo apt-get update
sudo apt-get upgrade
If any kernel upgrades are required, this would be a good time to restart the server.
Install the packages we will require, this may take some time as the list is quite long.
sudo apt-get install ruby rubygems libruby libapache2-mod-passenger ruby-dev zip unzip libmysqlclient-dev libmagickcore-dev libmagickwand-dev mysql-server mysql-client
You will be prompted for a MySQL root password. Usual decent password practices apply.
Download Redmine v2.1.4 from RubyForge.
http://rubyforge.org/frs/?group_id=1850
You can download either the tar or zip version. Download the MD5 Sum of the file as well (it will have the same file name but with ‘.MD5′ at the end and will be quite small.
wget http://rubyforge.org/frs/download.php/76495/redmine-2.1.4.tar.gz
wget http://rubyforge.org/frs/download.php/76495/redmine-2.1.4.tar.gz.md5
Confirm the MD5 of the file you downloaded matches the one in the md5 file
md5sum redmine-2.1.4.tar.gz
cat redmine-2.1.4.tar.gz.md5
If the strings do not match, one of the two files is corrupted.
Untar or Unzip the file and move the folder to an appropriate location
tar -xzvf redmine-2.1.4.tar.gz
unzip redmine-2.1.4.tar.gz
sudo mv redmine-2.1.4 /usr/local/share
cd /usr/local/share/redmine-2.1.4/
Install appropriate gems
sudo gem install bundler
sudo gem install rdp-mysql2
Install the Redmine ‘bundle’ without dev / test environments and other database components
sudo bundle install --without development test postgresql sqlite
Create a MySQL user and Database for Redmine (using the local server)
In these steps *** should be replaced by a password different from the root account.
Connect to the MySQL Server Daemon:
mysql -u root -p
Create the new user:
CREATE USER 'redmine'@'localhost' IDENTIFIED BY '***';
Create the new database:
CREATE DATABASE IF NOT EXISTS `redmine`;
Grant the user rights over the database:
GRANT ALL PRIVILEGES ON `redmine` . * TO 'redmine'@'localhost';
Create the Database configuration file
sudo nano config/database.yml
Enter the following text, replacing your password as per above
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: ***
Generate the session secret:
sudo rake generate_secret_token
Create the empty Redmine Database structure
sudo RAILS_ENV=production rake db:migrate
Populate the database with default data (optional: Only skip this step if you know what you’re doing in terms of configuring workflows / etc in Redmine)
sudo RAILS_ENV=production redmine:load_default_data
When prompted, select the appropriate language.
Configure Apache
sudo nano /etc/apache2/sites-available/default
Delete all the existing data in the file and insert the following base config:
<Virtualhost *:80>
DocumentRoot /usr/local/share/redmine-2.1.4/public
<Directory /usr/local/share/redmine-2.1.4/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>
Restart Apache2
sudo service apache2 restart
Open Redmine: http://<server_IP>/
Default details:
Username – admin
Password – admin
Other steps you should take:
Configure Redmine to send emails
Enable the Ubuntu Firewall (UFW)
Create a backup script that backs up uploaded files and the MySQL database
Tweak the Apache2 configuration to be more secure
Install the Nagios monitoring client
Setup rsyslogd to log to a remote location
Depending on demand I may create some How To guides for the above.