專案

一般

個人資料

動作

如何在 Debian 8 上使用 Apache2-Passenger 安裝 Redmine

最後更新時間:2015 年 4 月 4 日

本操作說明描述如何在 Debian 8(4 月 15 日,正式版發布前幾週)上使用 Apache 和 MySQL 安裝 Redmine 3.0.1。

提示
以一般使用者身分執行所有指令。如果需要 root 權限,請使用 sudo(需要正確安裝和設定「sudo」套件)。

1. 安裝 Debian 套件

sudo aptitude install mysql-server mysql-client libmysqlclient-dev gcc build-essential zlib1g zlib1g-dev zlibc ruby-zip libssl-dev libyaml-dev libcurl4-openssl-dev ruby gem libapache2-mod-passenger apache2-mpm-prefork apache2-dev libapr1-dev libxslt1-dev checkinstall libxml2-dev ruby-dev vim libmagickwand-dev imagemagick

2. 下載並準備 Redmine

2.1 下載 Redmine

cd /opt/
sudo mkdir redmine
sudo chown -R $your_user redmine
cd redmine
wget $redmine.tar.gz
tar xzf $redmine.tar.gz
cd redmine-X.X.X

2.2 準備 MySQL

mysql --user=root --password=$password
CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
exit

Redmine 資料庫設定

cp config/database.yml.example config/database.yml

自訂 config/database.yml

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: my_password

2.3 Bundler

安裝 bundler

sudo gem install bundler
bundle install --without development test

產生密鑰

bundle exec rake generate_secret_token

準備資料庫並安裝所有資料表

RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

2.4 測試 Redmine

將 $IP 替換為您的外部 IP

bundle exec ruby bin/rails server -b $IP webrick -e production

開啟瀏覽器並造訪 http://$IP:3000

3 Apache

Apache 服務以 www-data 使用者身分執行,因此 www-data 需要存取某些目錄

sudo chown -R www-data files log tmp public/plugin_assets
sudo chmod -R 755 files log tmp public/plugin_assets
sudo chown www-data:www-data Gemfile.lock

將 Redmine 公開目錄連結到 Apache 根目錄

sudo ln -s /opt/redmine/redmine-X.X.X/public/ /var/www/html/redmine

以下 VirtualHost 設定需要您對 Web 伺服器的控制權。
/var/www/html/ 下的每個網站可能都需要 Location 指令。

我們產生一個新的虛擬主機設定

sudo vim /etc/apache2/sites-available/master.conf

而 Redmine 需要

<VirtualHost *:80>

ServerAdmin admin@example.com
Servername hostname
DocumentRoot /var/www/html/

        <Location /redmine>
                RailsEnv production
                RackBaseURI /redmine
                Options -MultiViews
        </Location>

</VirtualHost>

停用 Debian 的預設虛擬主機

sudo a2dissite 000-default.conf

並啟用新的主要虛擬主機

sudo a2ensite master.conf

為了避免權限錯誤,Passenger 模組也需要以 www-data 身分執行。
編輯 /etc/apache2/mods-available/passenger.conf 並新增以下這一行

PassengerUser www-data

最後重新啟動 Apache

sudo service apache2 restart

開啟瀏覽器並造訪 http://$IP/redmine
完成。

Eric dLR 更新於 超過 7 年前 · 14 個版本