Windows下安裝Redmine 2.5.2不全然指南

    我決定在項目中引入Redmine來管理開發任務和計劃,至於Redmine的優勢,請問度娘或者腦補一下。html

    互聯網搜索到的。基本上都是舊版本號的。 1.2.1 的最多,我要新的啊,因此僅僅好本身來啦。mysql

    本文主體參考 Redmine Wiki 的安裝頁面:http://www.redmine.org/projects/redmine/wiki/RedmineInstall ,遇到的問題本身攻克了一下。web

總之不是翻譯,而是實踐記錄。sql

環境描寫敘述

    服務器操做系統爲Windows Server 2008 R2 Enterprise。64位版本號。數據庫

    Rails 3.2.19,ruby爲1.9.3p545。後端

    Redmine 爲 2.5.2 版本號。安全

    MySQL 爲5.5.40 win32 版本號。ruby

    ImageMagick 爲 ImageMagick-6.8.9-8-Q16-x86-dll 。服務器

安裝與配置

    Redmine 是基於 Ruby on Rails 的,我選擇最新版本號 2.5.2 。請到 redmine wiki 站點中的安裝頁面瞭解詳情。cookie

    截至我寫博文時(2014年10月17日)最新版本號爲 2.5.2 。

依賴選擇

    咱們先對 Redmine 依賴的環境和軟件作下說明。

    能跑 Ruby 的操做系統就能跑 Redmine ,依據公司狀況,我找了臺 Server 2008 的計算機。

    Redmine 對 Ruby 和 Rails 的依賴。例如如下圖:


    Redmine 2.5 版本號需要 3.2 及以上版本號的 Rails 。支持1.8.7 、 1.9.2 、 1.9.3 、2.0.0, 、 2.1 等版本號的 Ruby 。後面我選擇 RailsInstaller-2.2.4 來安裝 Ruby 和 Rails ,它裏面包括的 Rails 版本號是 3.2.19 , Ruby 版本號是 1.9.3p545 。符合 Redmine 的要求。

    Redmine支持 MySQL 做爲數據庫後端。需要 5.0 或更高的版本號。

我選擇社區版 server ,版本號號爲 5.5.40 。

    ImageMagick是可選依賴,用於將 Remine 中的項目數據如甘特圖等導出爲 png 圖片。其餘的可選依賴還有版本號管理工具。比方 svn 。Redmine 可以與版本號管理系統整合。假設你要支持 Open ID 。還需要 Ruby OpenID Library 。2 或者更高 版本號。

    好啦。現在開始秀安裝過程。

RailsInstaller安裝

    圖省事了。使用 RailsInstaller 來配置 Rails 和 Ruby ,它是一鍵安裝,很是easy。

    站點在這裏:RailsInstaller

按下圖所看到的,選擇 Windows 下的安裝包來下載:


    本文寫做時 RailsInstaller 的版本號爲 2.2.4 ,它帶的 Ruby 和 Rails 是用 mingw32 編譯出來的, MySQL 要匹配的。也得是 32 位。

    安裝過程就是一路狂點 Next 。首先是歡迎頁:


    二話不說。猛戳 Next button,出現許可協議頁面:


    接受吧,而後再戳 Next button,讓你選安裝位置還有附加的軟件及設置。例如如下圖:


    需要的空間也不大,咱都選上吧。點擊 Install button,開始安裝了。

例如如下圖:


    等着吧,還能幹麼……

    看到下圖就 OK 啦:


    點擊 Finish 吧,親。而後呢。你看到了 Ruby and Rails 的命令行環境:


    到此爲止, Ruby 和 Rails 安裝就緒。

MySQL安裝

    MySQL的官網截圖例如如下:


    你可以隨便選擇某個版本號,大於 5 就能夠。

我使用 5.5.40 x86 32bit MSI installer 。下載了 mysql-5.5.40-win32.msi 。如下是安裝歡迎界面:

    

    我是 Next 控,僅僅會點 Next ,點吧點吧不是罪……看呢,協議頁面:


    唯有接受,才幹享受猛戳 Next 的快樂。

戳下,到安裝類型頁面:


    我選了完整安裝。也沒多佔多大空間。再戳 Next ,到準備就緒界面了:


    用你無奈的手指,點 Install 吧,而後咱們就僅僅能看着進度條發呆了:


    咋個回事兒,你造嗎?居然出來了企業版的界面:


    Cancel 和 Back 都被灰掉啦,有點兒跟團旅遊被強制購物的感受……沒轍啦,帶着氣兒戳 Next 吧,看看它能變出啥子花樣來。


    再 Next 吧,耶,木有咧,回到進度條啦哈,原來僅僅是個宣傳,而已,沒那麼壞哈……

    如下是安裝完畢界面:


    MySQL 裝完還要作一下配置。你看上圖中那個複選框。默認是選中的。

假設本機沒有已經配置過的 MySQL ,由他去吧,點擊你最愛的 Finish button吧!

    (要是安裝過並且設置了 MySQL 的 root 帳號password,可能有問題,你別選這個 "Launch the MySQL Instance Configuration Wizard" 選項,跑到開始菜單或者安裝文件夾下的 bin 文件夾。找到 MySQLInstanceConfig 點下好啦。嚮導會給你個機會改動 root 的password的。)

    個人計算機上原來被同事安裝過 MySQL ,我覺得刪掉啦……結果呢,碉堡的事兒在後面,咱先按下不提吧,來看 MySQL 配置嚮導咧:


    Next 黨們,歡樂地戳吧。接下來就讓你選配置類型啦:


    我選了 Standard Configuration 。繼續 Next ,抵達 Service 配置了:


    如上圖所看到的。我選擇了安裝 Windows 服務和開機啓動,另外把 MySQL 的 bin 文件夾加入到了系統環境變量 PATH 中,這樣隨時隨地就可以訪問了。

    戳 Next 吧。而後就該設置帳號啦:


    我選擇了 Modify Security Settings ,不想埋地雷就沒有建立匿名用戶。歡快的戳了下 Next ,我到了準備就緒的頁面:


    能看到它。好開心!還等嘛。趕忙擁抱 Execute 吧。注意,開始運行你以前的配置嘍:


    我內心哼着小曲兒。就等着它往出蹦 Finish 界面呢,誰知道,受了驚嚇。請看:


    哇喔,安全設置失敗!要麼是因爲防火牆設置致使鏈接不上 3306 端口,要麼是以前有安裝 MySQL ,卸載時沒有清除數據文件夾,致使 root 的password還在那裏。

    我是哪一種呢……

    我認爲多是防火牆吧。因爲同事說 MySQL 已經刪除了。因而我把 mysqld 、 mysql 等等都加入到例外中,而後又到入站規則那裏設置了 3306 端口的規則,費了半天勁。最後回來 Retry 。嘿嘿,又彈這個。

    我僅僅好叫來個人同事,詢問以前的 MySQL password……而後呢, Skip 了。

回到 bin 文件夾,找到 MySQLInstanceConfig 來運行,保持剛纔那一路辛苦的配置。到了改動帳號這裏了,例如如下圖:


    看看。看看,有不一樣吧……

    這個插曲告訴咱們。前戲必定要充分,否則的話……

    此次搞下來後,順利看到了期待已久的 Finish 啊:


    數據庫配置 OK 啦,親們!

ImageMagick安裝

    到這裏去下載:


    選擇 ImageMagick-6.8.9-8-Q16-x86-dll.exe 那個下載吧。

而後運行它。

    我決定先不裝這玩意兒啦,先把 Redmine 跑起來看看。後面需要再配置。

Redmine安裝與配置

    Redmine 到這裏下載:http://www.redmine.org/projects/redmine/wiki/Download  。

記住是版本號 2.5.2 哦。

    zip 包下載完畢後,解壓到 C:\Sites 文件夾如下。這就安裝完咧!

    如下是配置,撓人的時刻就這麼來了,不知道該是歡喜仍是悲傷……

拷貝libmysql

    爲了 Redmine 可以正常鏈接 MySQL 。需要 MySQL 的 C API 庫。即 libmysql.dll 。在這裏:


    複製到 Ruby 的 bin 文件夾下。如圖所看到的:



安裝mysql2

    Redmine 需要 mysql2(MySQL 針對 Ruby 的 C binding )聽說可以提升性能,你可以在 Ruby and Rails 的命令行環境中運行如下的命令來安裝:

    

gem install mysql2

    只是我這裏出錯了哎……


    乖乖,缺乏 thread.h 。檢查了下。 Ruby 中還真沒這個頭文件。

網絡一頓盲搜,時光飛逝啊。我怒了,尼瑪,我要找個 thread.h 。我要換 Ruby 版本號!

    尋尋覓覓尋不到, thread.h 的蹤影……後來啊,我來到了這裏:


    啊哈。沒錯, rubyinstaller.org ,就是它了。我挑了 Ruby 2.0.0-p576 下載,找到 7z 包中的 ruby/thread.h 文件,複製到 C:\RailsInstaller\Ruby1.9.3\include\ruby-1.9.1\ruby 文件夾如下。

    萬事大吉了嗎?

    再次運行 gem install mysql2 。又錯啦……


    霍霍。找不到 mysqlclient 這個庫!

依據錯誤信息,需要指定 mysql c connector 的位置。

    使用 --with-mysql-dir 可以指定 mysql 的位置。而後 gem 安裝依賴時就會使用指定位置下的 mysql 頭文件和庫文件。需要說明的是,路徑中不能有空格,像 Program Files(x86) 這樣的路徑會出錯,因此我拷貝了 include 和 lib 文件夾,放在 c:\mysql_sdk 文件夾下。所以我運行如下的命令:

gem install mysql2 -- --with-mysql-dir="C:/mysql_sdk"

    此次會通關嗎?心中忐忑不已……人生的大起大落來得太快。當心肝承受不了呀……你看。事就這樣成了:



建庫

    參考個人建庫的圖片。裏面包括了命令。例如如下:


    基本步驟是醬紫的:從開始菜單運行 MySQL 5.5 Comand Line Client ,輸入password。登陸成功,建立庫 redmine ,建立用戶 redmine ,受權其訪問 redmine 庫。

配置數據庫鏈接

    把 C:\Sites\redmine-2.5.2\config文件夾下的 database.yml.example 原地拷貝一份,名字改成 database.yml 。而後用文本編輯器打開它,數據庫鏈接就在 database.yml 中配置。

    多幸福啊, Redmine 默認的配置就是針對 MySQL 的。你看:


    如圖所看到的,咱們僅僅需要改動 production這個配置就能夠。通常你僅僅要改動 password 就能夠(事實上你可以把 username 換成 redmine,password相應)。

比方個人配置:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: "zc_redmine"
  encoding: utf8

安裝依賴

    首先要安裝 bundler ,Redmine 使用它來維護 gems 依賴。

命令:

gem install bundler

    而後要確認你在 C:\Sites\redmine-2.5.2 文件夾如下,不在的話,使用 cd 命令進去,而後運行如下的命令來解決 redmine 需要的依賴:

bundle install --without development test

    這裏又會嘗試安裝 mysql2 。因爲咱們在 production 中指定使用 mysql2 做爲數據庫適配器。

假設發現已經安裝。就直接用本地的。你會看到 Using xxx 之類的信息,例如如下圖:


    安裝過程是漫長的……但願能成功,可是!又夭折啦!

看下圖:


    原來是 rmagick 啊,先跳過算咧,運行這個命令:

bundle install --without development test rmagick

    個人心,在等待。永遠在等待……Bingo!有圖有真相:


    最終可以繼續前行啦。真是一把鼻滴一把淚的……

    仍是要囉嗦兩句。假設你 bundle install 失敗,可以依據失敗提示。看是哪一個 gem 有問題。而後單獨運行安裝操做來查問題在哪裏……就這麼循環,總能搞定的。

人生需要正能量,必定會搞掂。

生成會話存儲祕鑰

    因爲咱們的 redmine 版本號是 2.x ,運行這個命令吧:

rake generate_secret_token

    上面的命令生成一個隨機的 Key , Rails 用它來加密 cookie ……

    這麼簡單一命令,也會錯……看圖吧:


    版本號問題啊,聽人勸,這麼幹:

bundle exec rake generate_secret_token

    這裏的黎明靜悄悄……運行這個命令,居然木有不論什麼 output ,難道是成功了嗎?且走着……

建立數據庫結構

    建立數據庫結構,使用如下的命令:

set RAILS_ENV=production
bundle exec rake db:migrate

    注意是一條一條運行啊,後面不提醒啦……還有,因爲我 rake 版本號問題,僅僅好每次調用 rake 時都在前面附加 bundle exec 嘍。

    它會建立一系列的表。設置表的權限,還會建立一個管理員帳號,就是天上地下無人不知的 admin 。password也是 admin 。

    看到如下這個圖。說明 OK 啦啦啦:



數據庫默認數據設置

    使用如下的命令來向數據庫中插入默認的配置數據:

set RAILS_ENV=production
bundle exec rake redmine:load_default_data

    一條一條運行。

    第二條運行時。會然咱們設置語言。如圖所看到的:


    我選擇了 zh ,而後回車。很是快就 OK 啦:


    又過了一關……咱們還要走,因爲。安踏,永不止步。

測試安裝

    不知不覺,居然到了這一步!這是要結束的節奏嗎?

    廢話少說,趕忙的,運行如下的命令:

ruby script/rails server webrick -e production

    你是個人眼,帶我領略這四季的變換……快告訴我,你是否是看見了這個圖:


    恭喜你。 redmine 已成功啓動!

    從輸出信息看到,它監聽了 0.0.0.0:3000 ,因此你可以訪問 http://localhost:3000 看看效果。也可以訪問實際的 ip 地址,比方 http://192.168.1.30:3000 。效果例如如下圖所看到的:

    點擊右上角的登陸,可以看到如下的頁面:


    還記得咱們的 admin 帳號嗎。輸入進去,點擊登陸button,就進去了,隨便點點,可能看到這個界面:


    好啦。到此爲止。你可以享受下管理員無上的權力帶來的快感。你可以定義角色,定義工做流程,建立成員……哇哦。真的好厲害。

只是,萬里長征剛剛開始,環境才就緒,怎樣把項目管理過程在 Redmine 中體現出來,可是路漫漫其修遠……


相關文章
相關標籤/搜索