Edition | Author | State | Date | Description |
---|---|---|---|---|
1.0 | iifksp | completed | 2010/06/08 | 基於redmine-0.9.4, Ubuntu-server-10.04-i386, subversion-1.6.3 |
1.0.1 | iifksp | completed | 2010/07/19 | 更新gem install安裝正常,passenger版本更新爲2.2.15,修正一處添加redmine站點的不詳描述 |
1.0.2 | iifksp | completed | 2010/08/01 | redmine官方更新到版本1.0.0 (數據庫表數爲48),更新wget地址 |
安裝配置時若是遇到問題,能夠到 我博客的對應文章 給我留言,我會盡力回覆你的問題。php
版本0.8.x能夠參考我寫的在ubuntu上簡單配置redmine。html
版本0.9.x能夠參考我寫的redmine-0.9.x配置過程。mysql
或者參看個人關於redmine的文章列表。linux
這裏配置的是Ubuntu server最新的10.04。關於系統安裝就很少說什麼了,塞進光盤而後一路next~web
系統初始配置信息。
IP:192.168.242.130
主機名:redmine
預裝選擇:LAMP server,Mail server,OpenSSH serversql
若是不須要redmine的郵件通知,或者不想本身搭建郵件服務器而使用已存在或者其餘SMTP郵件服務來發送郵件的話,能夠不用安裝Mail server,即postfix。若是是這樣,那麼下面的這步也能夠省去。數據庫
apt-get update apt-get upgrade而後咱們來開始配置redmine。
cd /usr/local/獲取當前版本並解壓:
wget http://rubyforge.org/frs/download.php/71723/redmine-1.0.0.tar.gz tar zxvf redmine-1.0.0.tar.gz mv redmine-1.0.0 redmine
mysql -u root -p mysql> create database redmine character set utf8; mysql> grant select,insert,delete,update,create,drop,alter,index on redmine.* to redmine; mysql> SET PASSWORD FOR 'redmine' = PASSWORD('redminePASSWORD'); mysql> flush privileges; mysql> exit;
cd /usr/local/redmine cp config/database.yml.example config/database.yml vim config/database.yml配置production部分紅以下所示。其中的database,username,password按實際狀況替換。
production: adapter: mysql database: redmine host: localhost username: redmine password: redminePASSWORD encoding: utf8當前版本的需求是ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1。爲此首先安裝須要的包。
apt-get install rake rubygems libopenssl-ruby libmysql-ruby能夠看到這些包被安裝:
irb1.8 libmysql-ruby libmysql-ruby1.8 libopenssl-ruby libopenssl-ruby1.8 libreadline-ruby1.8 libreadline5 libruby1.8 rake rdoc1.8 ruby ruby1.8 rubygems rubygems1.8 unzip ziprake的安裝則必須指定版本:
gem install rack --version=1.0.1上面這條命令在我之前寫配置的時候一直有效,可是在編寫此文時,gem的在線安裝有些問題。不知是出於網絡的問題仍是其餘緣由,我獲得了下面的錯誤:
WARNING: RubyGems 1.2+ index not found for: http://gems.rubyforge.org/ RubyGems will revert to legacy indexes degrading performance. Bulk updating Gem source index for: http://gems.rubyforge.org/ ERROR: While executing gem ... (Gem::RemoteSourceException) Error fetching remote gem cache: SocketError: getaddrinfo: Temporary failure in name resolution (http://gems.rubyforge.org/yaml)
google以後也沒能找到什麼結果,因此只好本地安裝rack了。apache
更新(2010/07/19):在線安裝已經恢復正常,看來產生上面的錯誤是臨時性的。但仍舊保留下面的本地安裝方式。ubuntu
下載對應的rack-1.0.1.gem到本地後安裝:vim
wget http://rubyforge.org/frs/download.php/65736/rack-1.0.1.gem gem install --local rack-1.0.1.gem繼續下面的步驟,生成會話存儲密鑰:
RAILS_ENV=production rake config/initializers/session_store.rb注:r3055以後的版本移除了config/initializers/session_store.rb,使用下面的命令替代。
rake generate_session_store而後開始建立數據庫表結構,在redmine的根目錄下運行:
RAILS_ENV=production rake db:migrate讀取默認配置數據,當遇到選擇語言(Select language)時,選擇zh:
RAILS_ENV=production rake redmine:load_default_data
Select language: bg, bs, ca, cs, da, de, el, en, es, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sr, sv, th, tr, uk, vi, zh, zh-TW [en]zh ==================================== Default configuration data loaded.至此,redmine簡單的配置就完成了。使用其自帶的webrick來運行redmine,來檢查下redmine的配置吧:)
ruby script/server webrick -e production默認的管理員用戶名和密碼都是admin,進入系統後就能夠開始熟悉下了。能夠爲每一個人定義語言環境。下圖是管理頁面。
apt-get install build-essential apt-get install apache2-prefork-dev libaprutil1-dev libapr1-dev ruby1.8-dev而後安裝 passenger
gem install passenger passenger-install-apache2-module若是報passenger-install-apache2-module這條命令找不到的話,那麼經過下面的命令查看執行路徑:
gem environment
RubyGems Environment: - RUBYGEMS VERSION: 1.3.5 - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [i486-linux] - INSTALLATION DIRECTORY: /var/lib/gems/1.8 - RUBY EXECUTABLE: /usr/bin/ruby1.8 - EXECUTABLE DIRECTORY: /var/lib/gems/1.8/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /var/lib/gems/1.8 - /root/.gem/ruby/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - http://gems.rubyforge.org/其中,EXECUTABLE DIRECTORY就是命令的全路徑,因此對於我例子裏的狀況執行
/var/lib/gems/1.8/bin/passenger-install-apache2-module根據提示安裝和部署。passenger會在本機編譯併成爲apache的一個模塊。安裝過程當中會遇到下面的提示信息(根據版本的不一樣,信息也會稍有變化):
Welcome to the Phusion Passenger Apache 2 module installer, v2.2.13. This installer will guide you through the entire installation process. It shouldn't take more than 3 minutes in total. Here's what you can expect from the installation process: 1. The Apache 2 module will be installed for you. 2. You'll learn how to configure Apache. 3. You'll learn how to deploy a Ruby on Rails application. Don't worry if anything goes wrong. This installer will advise you on how to solve any problems.
The Apache 2 module was successfully installed. Please edit your Apache configuration file, and add these lines: LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.13/ext/apache2/mod_passenger.so PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.13 PassengerRuby /usr/bin/ruby1.8 After you restart Apache, you are ready to deploy any number of Ruby on Rails applications on Apache, without any further Ruby on Rails-specific configuration!
Deploying a Ruby on Rails application: an example Suppose you have a Rails application in /somewhere. Add a virtual host to your Apache configuration file and set its DocumentRoot to /somewhere/public: ServerName www.yourhost.com DocumentRoot /somewhere/public # <-- be sure to point to 'public'! AllowOverride all # <-- relax Apache security settings Options -MultiViews # <-- MultiViews must be turned off And that's it! You may also want to check the Users Guide for security and optimization tips, troubleshooting and other useful information: /var/lib/gems/1.8/gems/passenger-2.2.13/doc/Users guide Apache.html Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-) http://www.modrails.com/ Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.
根據提示信息部署,我這裏的步驟稍有不一樣。
首先,編輯apache的配置文件並添加下面的信息
(注:「passenger-2.2.13」裏的版本號需根據實際狀況更改,當前(2010/07/19)的更新爲passenger-2.2.15)
:vim /etc/apache2/apache2.conf
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.13/ext/apache2/mod_passenger.so PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.13 PassengerRuby /usr/bin/ruby1.8而後在/etc/apache2/sites-available添加一個站點:
vim redmine並添加以下內容:
RailsBaseURI /redmine在web根目錄創建redmine主目錄的符號連接,並設置權限:
ln -s /usr/local/redmine/public /var/www/redmine chown -R www-data:www-data /var/www啓用redmine站點:
a2ensite redmine最後重啓apache:
/etc/init.d/apache2 restart或,從新加載配置:
/etc/init.d/apache2 reload打開瀏覽器,若是你可以訪問到redmine,那麼恭喜你,redmine已經在apache上運行良好!
apt-get install subversion建立SVN的根目錄,這裏我建在/var。而後創建一個演示用的庫。
cd /var mkdir svn cd svn svnadmin create demo而後配置demo庫:
cd demo/conf ls -lconf目錄裏是authz,passwd和svnserve.conf這三個文件,分別用於配置用戶權限、用戶密碼和配置此版本庫(demo)。
-rw-r--r-- 1 root root 1089 2010-06-04 14:45 authz -rw-r--r-- 1 root root 335 2010-06-04 14:44 passwd -rw-r--r-- 1 root root 2265 2010-06-04 14:44 svnserve.conf首先配置svnserve.conf的內容:
[general] anon-access = read auth-access = write password-db = passwd authz-db = authz realm = Demo Repositorypasswd文件裏存儲的是用戶名和密碼,一行一條記錄。
[users] redmine = redminePASSWORDauthz是受權文件,配置着每一個用戶和組的權利,下面是把redmine用戶放到redmine_group組裏並賦予redmine_group組demo庫的讀寫權限。
[groups] dev = redmine [demo:/] @dev = rw簡單配置完後,啓動svnserve:
svnserve -d -r /var/svn最後將SVN服務加入自啓動:
cd /etc/rc2.d vim S88svnserve並在文件S88svnserve中添加上面的啓動命令
svnserve -d -r /var/svn最後還不能忘了加上執行權限:
chmod +x S88svnserve而後,在redmine中對應項目的配置裏,指向對應的版本庫。
apt-get install postfix這裏之因此要特地配置個郵件服務器,徹底是爲了使整個redmine系統完整。徹底可使用其餘郵件服務。 默認配置的Postfix已經可以知足當前的發信狀況。關於郵件系統和Postfix的討論嚴重超出了本文範圍,對於不熟悉Postfix的人,我推薦閱讀 Postfix基礎配置,若是想了解更多,能夠閱讀 Postfix虛擬郵件系統徹底配置(儘管此文還未徹底完成)。 若是想要知道郵件系統的前因後果,郵件服務器如何處理郵件,那麼我強烈建議閱讀《Postfix權威指南》一書,這本書對於郵件系統的講解深刻淺出,是本好書。 redmine郵件的配置文件一樣在主目錄的config裏:
cp email.yml.example email.yml vim email.yml移動到末尾能夠看到默認的配置,將production改成以下所示。其中的域名等信息按實際狀況替換。
production: delivery_method: :smtp smtp_settings: address: localhost port: 25 domain: swordair.com authentication: :none更多郵件信息參考: 官方郵件配置參考。裏面包括瞭如何來寫驗證信息等內容。 至此,你就得到了一個敏捷運行的redmine項目管理系統。