在Microsoft Azure中,手動安裝Redmine for Ubuntu Linux

在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

新增評論

Loading