在Microsoft Azure中,半自動安裝Redmine for Ubuntu Linux這篇文章說,說明了如何用apt來安裝redmine。
然而如果你有使用新版Redmine與升級Redmine的需求,建議使用手動的方式來安裝redmine,即本文要說明的方式。
如果Redmine架設完成後想跟Git整合,可以參考 在Ubuntu上Redmine與Git + Grack整合
先進行apt source的更新。
sudo apt-get update
安裝apache2與passenger相關的apache元件。安裝subversion,之後要用來下載redmine官方上的程式。
sudo apt-get install apache2 libapache2-mod-passenger subversion
安裝mysql資料庫,過程中需設定mysql root的密碼。
sudo apt-get install mysql-server mysql-client
安裝redmine會使用到的元件。
sudo apt-get install ruby-dev imagemagick libmagickcore-dev libmagickwand-dev libmysqlclient-dev build-essential
於家目錄中,下載redmine官方的程式。
cd ~ mkdir redmineSVN cd redmineSVN sudo svn co http://svn.redmine.org/redmine/branches/2.5-stable redmine2.5
建立plugin資料夾與連結redmine到apache2。
sudo mkdir ~/redmineSVN/redmine2.5/public/plugin_assets sudo ln -s ~/redmineSVN/redmine2.5/public /var/www/redmine
建立redmine的設定檔
cd ~/redmineSVN/redmine2.5/ sudo cp config/configuration.yml.example config/configuration.yml sudo cp config/database.yml.example config/database.yml
登入mysql資料庫(需輸入root的密碼)
mysql -uroot -p
建立redmine要使用的user與database。
注意:請記得把密碼改成你想要的。
CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;
EXIT;
編輯redmine資料庫設定檔
sudo vi ~/redmineSVN/redmine2.5/config/database.yml
修改後結果如下:
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: “my_password”
encoding: utf8
安裝bundler與相關套件
sudo gem install bundler sudo bundle install --without development test
redmine初始化設定
sudo bundle exec rake generate_secret_token sudo RAILS_ENV=production bundle exec rake db:migrate sudo RAILS_ENV=production bundle exec rake redmine:load_default_data
啟用rewrite與passenger模組
sudo a2enmod rewrite passenger
編輯/etc/apache2/mods-enabled/passenger.conf檔案
sudo vi /etc/apache2/mods-enabled/passenger.conf
把PassengerDefaultUser www-data加入到/etc/apache2/mods-enabled/passenger.conf中。
加入後,最終的結果如下
<IfModule mod_passenger.c> PassengerDefaultUser www-data PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini PassengerDefaultRuby /usr/bin/ruby </IfModule>
把預設的site設定檔關掉,建立一個新的redmine site設定檔
sudo a2dissite 000-default sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/redmine.conf
編輯redmine site的設定檔
sudo vi /etc/apache2/sites-available/redmine.conf
找到
DocumentRoot /var/www/html
修改為
DocumentRoot /var/www
並增加
<Directory /var/www/redmine> RailsBaseURI /redmine PassengerResolveSymlinksInDocumentRoot on </Directory>
啟用redmine site設定檔
sudo a2ensite redmine
修正redmine的目錄檔案權限
sudo chown -R www-data ~/redmineSVN/redmine2.5 sudo chgrp -R www-data ~/redmineSVN/redmine2.5
重新啟動apache2
sudo service apache2 restart