Apache下Redmine2.6配置,請參考:https://blog.linuxeye.com/405.html
CentOS6.6下安裝Redmine2.6+MySQL5.6+Nginx,教程如下:
1. 初始環境
系統版本:CentOS-6.6-x86_64-minimal.iso
安裝LNMP,參考《lnmp一鍵安裝包》;修改options.conf,home_dir=/data/wwwroot
2. ruby安裝
cd lnmp/src
wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz
tar xzf ruby-2.1.5.tar.gz
cd ruby-2.1.5
./configure --prefix=/usr/local/ruby
make && make install
cd ..
添加到環境變量
vi /etc/profile
export PATH=/usr/local/ruby/bin:$PATH
. /etc/profile
查看ruby版本號
# ruby -v
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
3. 安裝rails
#安裝gem
wget http://production.cf.rubygems.org/rubygems/rubygems-2.4.5.tgz
tar xzf rubygems-2.4.5.tgz
cd rubygems-2.4.5
ruby setup.rb
cd ..
提示:gem是一種文件組織的包,一般的ruby的很多插件都有由這種各種的包提供。
# gem -v
2.4.5
# which gem
/usr/local/ruby/bin/gem
由於國內網絡原因(你懂的),導致rubygems.org存放 Amazon S3上面的資源文件間歇性連接失敗。所以你會與遇到gem install rack或bundle install的時候半天沒有響應,具體可以用gem install rails -V來查看執行過程。下面替換成淘寶的GEM鏡像站:
# gem sources -l
*** CURRENT SOURCES ***
https://rubygems.org/
# gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
# gem sources -a https://ruby.taobao.org/
https://ruby.taobao.org/ added to sources
# gem sources -l
*** CURRENT SOURCES ***
https://ruby.taobao.org/
Redmine需要考慮Ruby版本兼容性問題,請參考:Installing Redmine
Redmine version
Supported Ruby versions
Rails version used
current trunk
ruby 1.9.3, 2.0.0, 2.1, jruby-1.7.6
Rails 4.1
trunk < r13482
ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, 2.1, jruby-1.7.6
Rails 3.2
2.5, 2.6
ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, 2.1, jruby-1.7.6
Rails 3.2
2.4
ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, jruby-1.7.6
Rails 3.2
Redmine選擇安裝2.6版本,因此rails安裝3.2版本
gem install rails -v=3.2
# rails -v
Rails 3.2.19
4. 安裝redmine2.6
wget http://www.redmine.org/releases/redmine-2.6.1.tar.gz
tar xzf redmine-2.6.1.tar.gz -C /data/wwwroot
mv /data/wwwroot/redmine{-2.6.1,}
創建redmine
數據庫
cd /data/wwwroot/redmine
# mysql -uroot -p
mysql> create database redmine;
make sure to install the C bindings for Ruby that dramatically improve performance. You can get them by running gem install mysql2.
配置Redmine的database.yml
cd /data/wwwroot/redmine/config
cp database.yml.example database.yml
cat database.yum #修改對應數據庫連接信息
production:
adapter: mysql2
database: redmine
host: localhost
username: root
password: "linuxeye"
encoding: utf8
安裝redmine依賴的所有ruby包
cd ..
gem install bundler #注意是在網站根目錄下執行
bundle install --without development test rmagick #完成redmine依賴包的安裝
bundler是用來管理ruby的包依賴的工具
為Rails生成cookies秘鑰
rake generate_secret_token
創建數據庫結構
RAILS_ENV=production rake db:migrate
生成缺省數據
RAILS_ENV=production REDMINE_LANG=zh rake redmine:load_default_data
調整文件系統權限
cd /data/wwwroot/redmine
mkdir -p tmp tmp/pdf public/plugin_assets
chown -R www.www /data/wwwroot/redmine
tmp和tmp/pdf (若不存在則創建該路徑,用於生成 PDF 文件);public/plugin_assets (若不存在則創建該路徑,plugins資源)
5. 在WEBrick服務上測試Redmine是否安裝成功
# vi /etc/passwd #使www用戶有bash權限,lnmp腳本安裝www用戶沒有bash權限
www:x:501:501::/home/www:/bin/bash
# su www -c "ruby script/rails server webrick -e production -d"
地址:http://IP:3000 (注意:打開iptables 3000端口號)
缺省管理員用戶:
-
login: admin
-
password: admin
如果驗證成功,則繼續下面的步驟來使Redmine運行在Apache服務上
6. 配置Redmine在Nginx上運行
結束webrick服務
cd /data/wwwroot/redmine/public/
cp dispatch.fcgi.example dispatch.fcgi
cp htaccess.fcgi.example .htaccess
chown -R www.www ./*
安裝Passenger(用於整合Nginx)
gem install passenger
passenger-install-nginx-module
重新編譯Nginx
cd ~/lnmp/src
cd nginx-1.6.2
/usr/local/nginx/sbin/nginx -V #查看已經編譯參數
#在其後加上--add-module=/usr/local/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.57/ext/nginx參數,我的編譯參數如下
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module \
--with-http_spdy_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module \
--with-http_flv_module --with-ld-opt=-ljemalloc \
--add-module=/usr/local/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.57/ext/nginx
make
mv /usr/local/nginx/sbin/nginx{,_`date +%m%d`}
cp objscp objs/nginx /usr/local/nginx/sbin/
配置Nginx
vi /usr/local/nginx/conf/nginx.conf#在http {}直接添加
passenger_root /usr/local/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.57;
passenger_ruby /usr/local/ruby/bin/ruby;
添加虛擬主機(/usr/local/nginx/conf/vhost/bugs.linuxeye.com.conf)如下:
server {
listen 80;
server_name bugs.linuxeye.com;
access_log /data/wwwlogs/bugs.linuxeye.com_nginx.log combined;
index index.html index.htm index.jsp index.php;
include none.conf;
root /data/wwwroot/redmine/public;
passenger_enabled on;
}
原文:https://blog.linuxeye.com/407.html