www.kraxnet.cz Xnet.cz | XNet Blog | Administrace | Railshosting.cz  

XNet Wiki Encyklopedie návodů, postupů a informací pro často řešené problémy

 

Jak nastavit aplikaci pro deploy pomocí nástroje Capistrano

Doporučený a podporovaný způsob jak nasadit a udržovat vaši aplikaci na serveru je prostřednictvím nástroje Capistrano, který se konfiguruje souborem deploy.rb, který jsme vám zaslali jako přílohu aktivačního e-mailu.

V lokálním adresáři s vaší aplikací (tedy na vašem počítači, nikoliv na serveru) spustťe příkaz:

  capify .

Poté přepište soubor config/deploy.rb souborem deploy.rb, který jsme vám zaslali e-mailem, nebo který jste si stáhli z administračního rozhraní. Tento soubor obsahuje konfigurační direktivy pro nasazení aplikace na server pomocí protokolu SSH.

Následně musíte sdělit Capistranu, z jakého repositáře má nahrát aplikaci na server. (Nemáte-li repositář k dispozici, využijte serverů Github, Git.Or.cz nebo nám napište a my vám Git repositář zřídíme.) Učiníte tak pomocí deklarace set :repository, "cesta_k_vasemu_repositari", kam uvedete správnou cestu, např:

  set :repository, "git://github.com/karmi/workshop_tutorial_application.git" 

Aby se mohlo Capistrano připojit k repositáři, budete pravděpodobně muset na server s repositářem nahrát klíč pro uživatele deployer. Tento klíč jsme vám zaslali jako přílohu git.pub aktivačního e-mailu. Můžete si jej také zkopírovat z administračního rozhraní. Instrukce pro instalaci klíče na server Github naleznete v článku Guides: Deploying with Capistrano.

V dalším kroku spustíte konfiguraci vašeho virtuálního serveru (vytvoření adresářů pro releases a další) pro nasazení aplikace pomocí Capistrano:

  cap deploy:setup

A nakonec provedete samotné nahrání vaší aplikace na server, spuštění databázových migrací a restart aplikačního serveru:

  cap deploy:cold

Vaši aplikaci běžící v produkčním módu nalezenete na URL http://jmeno_vasi_aplikace.free.railshosting.cz

Aktualizaci kódu vaší aplikace a restart serveru budete poté provádět příkazem:

  cap deploy:migrations

(resp. jen cap deploy, pokud nechcete spouštět databázové migrace.)

Můžete se též např. vracet ke starším verzím aplikace pomocí příkazu:

  cap deploy:rollback

a provádět pomocí Capistrano její další správu.