ISPConfig 3 дээр Ruby on Rails вэб тохируулж ажиллуулах
Гарчиг
Хуулахын өмнө production горимд шилжүүлнэ
1. Продакш нь горимд шилжүүлэхэд config/secrets.yml файлын production хэсэгт secret_key_base утгатай байх хэрэгтэй. Ингээгүй тохиолдолд 500 алдаа гарна.
RAILS_ENV=production rake secret
тушаалаар түлхүүрийг үүсгээд config/secrets.yml файл дотроо production хэсэгт хуулж тавьж тохируулна.
2. config/environments/production.rb файлд дараах 2 тохиргоог true утгатайгаар тохируулна:
config.serve_static_files = true config.assets.compile = true
Ингээгүй тохиолдолд css, js, зураг зэрэг статик файлууд public хавтаснаас олдохгүй алдаа гарна.
3. Дараах тушаалаар өгөгдлийн баазаа production горимд нэгтгэнэ.
RAILS_ENV=production rake db:migrate
Өгөгдлийн баазаа гаргаж аваад сервер рүү оруулж тохируулна. Хэрэв MySQL ашиглаж байгаа бол эхлээд сервер дээрээ MySQL тохируулж баазаа бэлдэнэ. (ns9.dusal.net сервер ашиглаж байгаа үед https://server5.dusal.net/dbman хаягаар орж өгөглдлийн баазтайгаа ажиллана.)
config/database.yml файлын production хэсэгт username, password, database утгуудыг зөв тохируулж өгнө.
production: adapter: mysql2 database: <db_ner> host: localhost username: <db_user_name> password: <password>
4. Статик файлуудыг public хавтас руу хуулж бэлдэнэ:
RAILS_ENV=production rake assets:precompile
Apache тохиргоо тохируулна
Энэ үйлдлийг хийснээр public хавтаснаас вэб ажиллах боломжтой болно. Харин RailsEnv production нь бэлэн болсон сайт буюу production горимд сайтыг ажиллуулна. Тиймээс хуулахаас өмнө хэрэв development юмуу test горимд байгаа бол production горим руу шилжүүлсний дараа сервер рүү хуулах хэрэгтэй.
Мөн вэбээ анх үүсгэхдээ тохируулаагүй бол Ruby тохиргоог тохируулж өгнө
FTP ашиглан файлаа хуулна
Ингээд Website хэсэгт вэбээ сонгон FTP хэрэглэгч үүсгэж холбогдоод, /web хавтас руу файлуудаа хуулна.
Ингээд хуулж дуусаад домэйн нэрээрээ сайт руугаа хандахад ажиллах болно.
Хуулсан жишээ:
Bundle автомат команд
web хавтсандаа bundle_exec.txt хоосон файл хуулбал 1 минутын дотор доорх командууд автоматаар хийгдэнэ. bundle install bundle exec rake db:migrate RAILS_ENV=production bundle exec rake assets:precompile RAILS_ENV=production bundle install reload
Алдаа шийдвэрлэх
Хэрэв ямар нэгэн алдаа гарвал /log/error.log, /web/log/production.log зэрэг файлаас алдааг хайж засна уу.
Хэрэв сервер shell дээр тушаал бичиж үйлдэл хийх шаардлага гарвал admin@dusal.net хаягаар холбогдон тохиргоо хийлгүүлж болно.
Холбоотой мэдээллүүд
1. https://www.brainstorm.net.au/installing-redmine-2-1-x-on-an-ispconfig-3-running-ubuntu-12-04/
2. http://stackoverflow.com/questions/1949229/change-a-rails-application-to-production