[解決済み] Capistranoの "ロール "とは一体何ですか?
2023-05-23 16:34:41
質問
Capistrano レシピの "roles" の目的および機能は何ですか。レシピのサンプルを見ていると、よくこのようなものを見かけます。
role :app, 'somedomain.com'
role :web, 'somedomain.com'
role :db, 'somedomain.com', :primary => true
のように見えるわけです。 役割 は基本的に サーバ であり、Capistranoがコマンドを実行する場所です。もしそうなら、なぜquot;host" やquot;server" ではなく、quot;role" と呼ばれるのでしょうか?
上の例では
:app
と
:web
の役割を担っているのでしょうか?
は何をするのでしょうか?
:primary => true
オプションは何をするのでしょうか?
どのように解決する?
ロールは、特定のサーバにのみ適用されるcapistranoタスクを書くことを可能にします。 これは、実際には複数サーバーのデプロイメントにのみ適用されます。 デフォルトのロールである "app"、"web"、および "db" は内部でも使用されるので、その存在はオプションではありません (AFAIK: 日本経済新聞)。
提供されたサンプルでは、機能的な違いはありません。
":primary => true"は、カスタムタスクでサーバーを指定する際に、さらに細かく指定できるようにするための属性です。
タスク定義におけるロール指定の例です。
task :migrate, :roles => :db, :only => { :primary => true } do
# ...
end
capistranoのサイト@をご覧ください。 https://github.com/capistrano/capistrano/wiki/2.x-DSL-Configuration-Roles-Role を参照してください。
関連
-
[解決済み】警告:定数 ::Fixnum は非推奨 新しいモデルを生成するとき
-
[解決済み】gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み】コントローラでJSONをレンダリングする
-
[解決済み】bcrypt LoadError: Cannot load such file
-
[解決済み】OS X Yosemite 10.10.5 で [Ruby on Rails] 5 をインストールすると extconf が失敗して終了コード 1 エラーになる。
-
[解決済み] Paramが無いか、値が空である。ParameterMissing in ResultsController#update
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] rails/rubyでgroup_byを使用する。
-
[解決済み] Ruby on Rails の新規セットアップ : "Expected string default value for '--rc'; got false (boolean)".
-
[解決済み] Rubyのattr_accessorとは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Rails: sudo "コマンドが認識されないのはなぜですか?
-
[解決済み】取得中。「プロジェクトのクローンとマイグレート後に、「マイグレーションは保留中です。この問題を解決するには 'bin/rake db:migrate RAILS_ENV=development' を実行してください。
-
[解決済み] 変更欄のRailsマイグレーション
-
[解決済み] Rubyで変数をインクリメントする [重複]。
-
[解決済み] PG::ConnectionBad - サーバーに接続できませんでした。接続が拒否されました。
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] Errno::EACCESS: パーミッションが拒否された @ dir_s_mkdir
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] バリデーションなしで属性を更新する方法
-
[解決済み] 属性とカラムの違いは何ですか?