初識jruby之 在tomcat上部署jruby on rails

1. prerequesite

       假定部署的sever上已經安裝好了Java環境和mysql數據庫(因爲這裏我將以mysql爲例)。並且,這裏爲了和前面幾篇博文保持一致,還是在windows上進行部署,實際在linux上部署的節奏也差不多了,即便遇到問題,google is ready for you.

2. 安裝配置Apache Tomcat

     首先,在Apache Tomcat網站上下載tomcat壓縮包,目前的版本是7.0。下載完成後解壓縮,如解壓到C:\,解壓縮後目錄結構如圖:

    進入其中bin目錄,並以管理員身份運行startup.bat批處理文件啓動tomcat,tomcat默認端口爲8080,所以,在瀏覽器中訪問http://localhost:8080,如果出現圖示頁面說明tomcat安裝配置正確。

3. 下載安裝jruby

     安裝jruby在前一篇博文講解較細,這裏不再贅述。
     安裝必要的JDBC。
jruby -S gem install activerecord-jdbcmysql-adapter -v 1.3.0.beta2

     如果要將jruby on rails工程打包爲war發佈到tomcat上,就必須要用到warbler Gem
 jruby -S gem install warbler

4. 打包jruby on rails工程

     首先確認database.yml文件production環境配置正確:
production:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: demo_production
  username: user
  password: password
  host: localhost
  port: 3306

    配置正確的production數據庫,及其用戶密碼。
   在數據庫中創建production數據庫demo_production,並且賦予用戶user對該數據庫的完全權限。
   然後開始打包工程,在rails app根目錄下執行:
jruby -S warble

    該命令會在工程根目錄下生成一個war文件,如demo.war,該war會將必要的gem打包進去,使得我們能夠像普通java工程war文件那樣部署到tomcat中。

5. 部署war

    將該war複製到tomcat的webapps目錄下,等待大約幾秒鐘,tomcat會自動釋放文件完成部署。
   最後一步,進入tomcat釋放的文件夾demo中,生成數據庫schema:
C:\apache-tomcat-7.0.35\webapps\demo>jruby -S rake db:migrate RAILS_ENV="production"

  現在可以訪問http://localhost:8080/demo,可以看到rails app的首頁了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章