CentOS 5.9
Ruby ruby 1.9.3p125
gem 2.1.4
mina 0.3.0
Ruby ruby 1.9.3p125
gem 2.1.4
mina 0.3.0
■インストール
cd /var/tmp
touch Gemfile
vim Gemfile
cat Gemfile
bundle exec mina init
すると「/var/tmp/config/deploy.rb」が作成されます
touch Gemfile
vim Gemfile
cat Gemfile
source :rubygems gem 'mina'bundle install --path vendor/bundle
bundle exec mina init
すると「/var/tmp/config/deploy.rb」が作成されます
■設定
vim /var/tmp/config/deploy.rb
コメントアウトしないとrakeファイルがない(No Rakefile found)と言われてデプロイに失敗します
set :domain, 'hostname' set :deploy_to, '/var/tmp/deploy' set :user, 'root' set :repository, 'https://github.com/kakakikikeke/ruby-kakabot.git'
#invoke :'rails:db_migrate' #invoke :'rails:assets_precompile'今回はrailsアプリでなくDBも使っていないため上記2行をコメントアウトします
コメントアウトしないとrakeファイルがない(No Rakefile found)と言われてデプロイに失敗します
■デプロイ先設定
cd /var/tmp
bundle exec mina setup
設定に合わせた事前準備を先ほど設定ファイルに記載したデプロイ先に対して実行します
bundle exec mina setup
設定に合わせた事前準備を先ほど設定ファイルに記載したデプロイ先に対して実行します
■デプロイ実行
cd /var/tmp
bundle exec mina deploy
ls /var/tmp/deploy/releases/1/
にgitからcloneしたデータがデプロイされていると思います
bundle exec mina deploy
ls /var/tmp/deploy/releases/1/
にgitからcloneしたデータがデプロイされていると思います
■Tips
・mina tasks
・mina init
実行できるタスクの一覧を表示してくれます
・gem install mina --no-rdoc --no-ri・mina init
上記の手順でもインストールと初期設定ができるみたいなんだけどGemfileがないためCould not locate Gemfileとなって怒られてしまいます
・デプロイ先ホストへのSSHノンパス設定今回は同一ホストに対して実施しましたがデプロイ先のサーバに対してはSSHのノンパスログインを設定する必要があります
公開鍵を使ったSSHのノンパス設定方法は以下を参照してください
http://kakakikikeke.blogspot.jp/2012/03/10ssh.html
・cap shell的なコマンド公開鍵を使ったSSHのノンパス設定方法は以下を参照してください
http://kakakikikeke.blogspot.jp/2012/03/10ssh.html
capistranoでいうところの「cap shell」みたいなコマンドはあるのか気になりました
mina console というタスクがデフォルトで用意されていたのでそれかなと思い実行したので裏側はrails console を実行していたので違うっぽい(?、未検証)
⇒mina run["ls -la"]といった感じで実行するとcap shellと同じようなことができるようです
mina console というタスクがデフォルトで用意されていたのでそれかなと思い実行したので裏側はrails console を実行していたので違うっぽい(?、未検証)
⇒mina run["ls -la"]といった感じで実行するとcap shellと同じようなことができるようです
■参考サイト
今回はデフォルトのレシピを使ってデプロイしてましたが次回は独自のレシピを使って実行してみたいと思います
0 件のコメント:
コメントを投稿