RubyMine 2026.1 ヘルプ

デプロイ構成を使用してアプリをデプロイする

RubyMine は、デプロイ構成を使用してアプリケーションをリモートサーバーにデプロイする機能を提供します。このトピックでは、リモートデプロイサーバーを設定し、IDE から直接ファイルシステムを参照し、Web アプリケーションをこのサーバーにアップロードする方法を示します。

前提条件

アプリケーションをリモートサーバーにデプロイする前に:

デプロイサーバーを構成する

デプロイサーバーは次のように構成できます。

  1. 設定 Ctrl+Alt+S を開き、ビルド、実行、デプロイ | デプロイページに移動します。

  2. Add をクリックして、ファイル転送プロトコル(SFTP など)を選択します。

  3. 新規サーバーの作成ダイアログで、構成名を指定して OK をクリックします。

  4. 接続タブで次の設定を指定します。

    Deployment configuration: Connection tab
    • このプロジェクトでのみ表示する : プロジェクト間で構成を共有したくない場合は、このオプションを有効にします。

    • タイプ : サーバーへのアクセス方法を指定します。

    • SSH 構成 : サーバーへのアクセスに使用する既存の SSH 構成を選択するか、省略ボタンをクリックして新しいものを追加します。

    • ルートパス : デフォルトの / パスのままにして、サーバーのルートフォルダーをポイントします。

    • Web サーバーの URL : ルート URL アドレスを指定します。

  5. マッピングタブに切り替えて、アプリケーションをデプロイする場所を指定します。

    Deployment configuration: Connection tab
    • ローカルパス : /Users/jetbrains/RubymineProjects/sample_rails_app などのローカルマシン上のプロジェクトルートへのパスを指定します。

    • デプロイメントパス : サーバー上のデプロイフォルダーを指定します。この例では、/home/deploy/sample_rails_app になります。

  6. (オプション)除外対象パスタブで、アップロード / ダウンロードに関与させたくないローカルおよびリモートフォルダーのリストを設定できます。

リモートホストを参照

デプロイサーバーを構成したら、IDE からそのファイルシステムを参照できます。

  1. メインメニューからツール | デプロイ | リモートホストの参照を選択します。

  2. 呼び出されたリモートホストツールウィンドウで、次のようなさまざまなアクションを実行できます。

    Remote Host
    • リモートサーバーとローカルマシンの間でファイルをドラッグします(リモートホストおよびプロジェクト Alt+1 ツールウィンドウを使用)。

    • ファイルとディレクトリを作成および削除します。

    • ローカルおよびリモートプロジェクトの比較して同期ファイル。

アプリをサーバーにアップロードする

デプロイサーバーを構成したら、プロジェクトをこのサーバーにアップロードできます。

  1. プロジェクトビュー Alt+1 で、ルートプロジェクトディレクトリを右クリックし、デプロイ | <構成名> にアップロードを選択します。

  2. RubyMine がプロジェクトファイルをリモートホストにコピーするまで待ちます。デプロイのステータスは、ファイル転送ツールウィンドウ(表示 | ツールウィンドウ | ファイル転送)で確認できます。

    File Transfer

    ローカルプロジェクトとリモートプロジェクト間の変更の同期の詳細については、「変更を同期」を参照してください。

変更を同期

ローカルプロジェクトに変更を加えたら、新しいファイルをリモートサーバーにアップロードする必要があります。RubyMine を使用すると、ローカルファイルとリモートファイル / ディレクトリを比較したり、変更を手動で同期したり、自動アップロードを有効にしたりできます。

変更を手動で同期する

  1. プロジェクトビュー Alt+1 で、同期に必要なファイルまたはディレクトリを選択します。例: プロジェクト全体を同期する場合は、プロジェクトルートを選択します。

  2. ツール | デプロイ | <構成名> と同期に移動します。

  3. 呼び出されたダイアログで、個々のファイルを選択し、それらのローカルバージョンとリモートバージョンを比較できます。

    Diff between files

    Synchronize Selected ボタン Enter を使用して、選択したファイルの変更をアップロードします。 Synchronize All Ctrl+Enter を使用すると、すべてのファイルを一度にアップロードできます。

自動アップロードを有効にする

  1. デフォルトのアップロードサーバーを指定します。設定 | ビルド、実行、デプロイ | デプロイを開き、目的のサーバーを選択して、Use as Default をクリックします。

  2. ビルド、実行、デプロイ | デプロイ | オプションページに移動し、変更されたファイルのデフォルトサーバーへの自動アップロードオプションを常時または明示的な保存操作時に設定します。

外部変更のアップロードを無効にする

デフォルトでは、VCS ブランチの変更SASS または LESS のコンパイルFile Watcher などの外部プロセスによってファイルが変更された場合、RubyMine もファイルをアップロードします。この動作を変更するには:

  1. 設定を開き、ビルド、実行、デプロイ | デプロイ | オプションページに移動します。

  2. 変更されたファイルをデフォルトサーバーにアップロードする常時に設定し、外部変更をスキップするオプションを有効にします。

デプロイオプションを設定する

デプロイオプションを構成するには、設定 Ctrl+Alt+S を開き、環境設定 | ビルド、実行、デプロイ | デプロイ | オプションページに移動します。このページを使用して、ローカルサーバーおよびリモートサーバーとの間でプロジェクトファイルをアップロードおよびダウンロードするための追加の構成設定を指定します。

オプション

項目

説明

項目を名前で除外

このフィールドでは、デプロイする必要のないファイルとフォルダーの名前のパターンを指定します。

セミコロン ; を区切り文字として使用し、アスタリスク * をゼロ以上の文字に一致させ、疑問符 ? を単一の文字に一致させます。

例: 3 つのファイル style.cssstyle1.cssstyle2.scss を持つフォルダー stylesheets がある場合、style* はフォルダー全体を除外し、style?.cssstyle1.css を除外し、style?.*style1.cssstyle2.scss を除外します。

正規表現 .info(英語) の詳細を参照してください。

除外は再帰的に適用されます。つまり、一致するフォルダーにサブフォルダーがある場合、これらのサブフォルダーの内容はデプロイされません。

操作ログ

このリストを使用して、必要な詳細ログ量を指定します。使用可能なオプションは次のとおりです。

  • エラーのみ : アップロード中に発生したエラーのみをログに表示するには、このオプションを選択します。

  • 簡単な : このオプションを選択すると、詳細なしですべてのイベントがログに反映されます。

  • 詳細 : フルファイルパスなど、ログに表示されるアップロードの詳細を表示するには、このオプションを選択します。

最新のファイルを上書きする

このチェックボックスを選択すると、前回のアップロード以降に変更されているかどうかに関係なく、すべてのファイルがアップロードされます。

それ以外の場合、このチェックボックスをオフにすると、前回のアップロード以降に変更されたファイルのみがアップロードされます。

アップロード中に一時ファイルを使用する

サーバーにアップロードされる変更されたファイルに一時的な名前を使用し、アップロード操作が正常に完了した後にのみ名前を元に戻すには、このチェックボックスをオンにします。

ファイルのタイムスタンプを保持する

アップロード時にファイルのタイムスタンプをリセットしないようにするには、このチェックボックスを選択します。

ソース項目が存在しないターゲット項目を削除する (プロジェクトビューまたはリモートホストビューから転送する場合)

このチェックボックスをオンにすると、この名前のファイルが現在のアップロードに含まれていない場合、コピー先のディレクトリ内のファイルはすべて削除されます。

このオプションは、プロジェクトツールウィンドウまたはリモートホストツールウィンドウから同期を実行する場合に適用されます。

空のディレクトリを作成する

元のフォルダーに最後にアップロードした後にプロジェクトに新しいローカルディレクトリが作成された場合、このチェックボックスをオンにすると、サーバー上の空のディレクトリが自動的に作成されます。

ローカル項目を上書きまたは削除するときに確認メッセージを表示する

ダウンロード中に同期するためにローカルアイテムを上書きまたは削除する前に、RubyMine に確認を求めるプロンプトを表示するには、このチェックボックスを選択します。

ファイルのアップロードを確認

ローカルアイテムをリモートホストにアップロードする前に、RubyMine に確認を求めるプロンプトを表示するには、このチェックボックスを選択します。

変更されたファイルのデフォルトサーバーへの自動アップロード

このリストから、RubyMine がデフォルトのサーバーまたはサーバーグループにファイルを自動的にアップロードするかどうかを選択します。使用可能なオプションは次のとおりです。

  • 常時 : 自動保存および明示的保存のたびにファイルをアップロードします。

  • 明示的な保存操作時 : この保存がファイル | すべて保存を選択するか、Ctrl+S を押して手動で呼び出された場合にのみ、保存後にファイルをアップロードします。

  • なし : 自動アップロードを抑制します。

デフォルトのサーバー構成またはサーバーグループは、デプロイページでリスト内の目的の項目を選択し、デフォルトとして使用ツールバーボタン icon use web server configuration as default をクリックすることによって指定されます。

外部変更をスキップする

このチェックボックスを選択すると、サードパーティのツール(VCS、スクリプトなど)を使用して行われたローカル変更を自動アップロードから除外します。

このチェックボックスは、変更されたファイルのデフォルトサーバーへの自動アップロードリストで常時または明示的な保存操作時オプションが選択されている場合にのみ使用できます。

ローカルファイルが削除されたときにリモートファイルを削除する

ローカルファイルが削除された場合に、RubyMine が自動アップロード中にリモートファイルを自動的に削除するようにするには、このチェックボックスを選択します。このチェックボックスは、変更されたファイルのデフォルトサーバーへの自動アップロードリストで常時または明示的な保存操作時オプションが選択されている場合にのみ使用できます。

このオプションは追加の安全対策として機能し、リモートサーバーに不要なファイルが残る可能性があることに注意してください。例として、名前が RENAMED.md に変更されたローカルファイル FILE.md を考えます。ファイルの名前を変更しても、技術的にはファイルの削除や新しいファイルの作成と区別がつかないため、自動アップロード後に次のことが起こります。

  • このオプションが有効な場合、リモートサーバーには RENAMED.md のみが含まれます。

  • このオプションが無効になっている場合、リモートサーバーには、自動アップロード後に FILE.mdRENAMED.md の両方が含まれます。おそらく後で FILE.md を手動で削除する必要があります。

元のファイル権限を保持する

有効にすると、RubyMine は、FTP/FTPS を介してリモートホストにファイルをアップロードするときに、元のローカルファイルのアクセス許可を保持します。

このオプションは、macOS および Linux でのみ使用できます。

ファイルのデフォルト権限を上書き:

このチェックボックスを選択して、リモートホスト上のアップロードされたファイルに割り当てられたデフォルトの許可を変更します。参照 the Browse button をクリックしてファイルのデフォルト権限ダイアログを開きます。ここで、パーミッションを割り当てることにより、リモートホスト上のアップロードされたファイルへのアクセスを管理できます。

フォルダーのデフォルト権限を上書き

このチェックボックスを選択して、リモートホスト上のアップロードされたフォルダーに割り当てられたデフォルトの許可を変更します。参照 the Browse button をクリックしてフォルダーのデフォルト権限ダイアログを開きます。ここで、許可を割り当てることにより、リモートホスト上のアップロードされたフォルダーへのアクセスを管理できます。

より新しいファイルをアップロードする際に警告する

このリストを使用して、リモートホストにファイルをアップロードするときに適用するバージョン管理ポリシーを定義します。この選択に応じて、RubyMine はリモートホスト上の対応するファイルに変更が加えられたかどうかをチェックします。これは、リモートファイルをダウンロードしたか、リモートファイルを上書きしただけです。

  • ノー静かにそのローカルコピーで上書きリモートホスト上のファイルを持っているために、このオプションを選択します。最後の同期以降にリモートファイルに加えられたすべての変更は破棄されます。

  • タイムスタンプとサイズを比較するこのオプションを選択すると、RubyMine は 2 つのチェックを実行します。

    1. ローカルファイルとリモートファイルのサイズを比較します。

    2. 最後の同期の時点で設定されたリモートファイルのタイムスタンプと現在のリモートファイルのタイムスタンプを比較します。

    ファイルのサイズが異なる場合、またはリモートファイルのタイムスタンプが異なる場合、RubyMine はファイルの差分ビューアーを開き、そこで違いを調べて統合できます。

    このタイプのチェックは、タイムゾーンの設定によって異なります。ローカルマシンのタイムゾーン設定がリモートホストのタイムゾーン設定と異なる場合、ファイルバージョンが実際に異なっていてもチェックが成功する可能性があります。

  • 内容の比較このオプションを選択すると、RubyMine はローカルファイルとリモートファイルの内容を比較します。迂回が検出された場合、RubyMine はファイルの差分ビューアーを開きます。ここで、違いを調査して統合できます。

リモート変更を通知する

リモートホストでの変更に関する通知を受信するには、このチェックボックスを選択します。このチェックボックスは、より新しいファイルをアップロードする際に警告するリストでタイムスタンプとサイズを比較するまたは内容の比較オプションが選択されている場合にのみ使用できます。

2024 年 12 月 11 日

関連ページ:

SSH

RubyMine を使用すると、SSH を使用してリモートマシンを操作できます。事前定義された SSH 構成を作成し、それを使用してリモート SSH セッションを実行したり、リモート Ruby インタープリターを構成したり、データベースに接続したりできます。SSH をセットアップする:SSH を使用してリモートマシンで作業する前に、リモートサーバーで SSH アクセスが有効になっていることを確認してください。いくつかの認証方法を使用できます。例: 認証にリモートホストのユーザー名とパスワードを使...

Git ブランチの管理

Git では、ブランチは、たとえば機能の作業が必要な場合や、リリースのためにコードベースの特定の状態を固定する必要がある場合などに、メインの開発ラインから分岐できるようにする強力なメカニズムです。RubyMine では、ブランチに関するすべての操作は VCS ウィジェットで行われます。これを呼び出すには、メインウィンドウのヘッダーで、現在チェックアウトされているブランチの名前が付いたウィジェットをクリックします。Git ツールウィンドウのブランチペインで、ブランチを管理し、複数のブランチでバッチ操...

Sass、SCSS、Less、PostCSS

RubyMine は、Sass、Less、SCSS コードを CSS に変換するコンパイラーと統合します。RubyMine でコンパイラーを使用するには、関連する事前定義済みテンプレートに基づいて、File Watcher としてコンパイラーを構成する必要があります。始める前に:お使いのコンピューターに Node.js がインストールされていることを確認してください。JetBrains マーケットプレイスからプラグインをインストールする説明に従って、設定 | プラグインページのマーケットプレースタブに Fi...

File Watchers

File Watcher は、IDE でファイルを変更または保存するときに、コンパイラー、フォーマッタ、リンターなどのコマンドラインツールを自動的に実行できる RubyMine ツールです。File Watchers には 2 つの専用コードインスペクションがあります。ファイル監視使用可能インスペクションは、定義済みの File Watcher が適用可能なすべてのファイルで実行されます。プロジェクトに関連する File Watcher が設定されていない場合、RubyMine は追加することを提...

プロジェクトツールウィンドウ

プロジェクトツールウィンドウを使用すると、さまざまな視点からプロジェクトを確認したり、新しいアイテム(ディレクトリ、ファイル、クラスなど)の作成、エディターでのファイルのオープン、必要なコード断片への移動など、さまざまなタスクを実行したりできます。このツールウィンドウのほとんどの機能には、コンテンツペインのコンテキストメニューコマンドとして、関連するショートカットを介してアクセスします。このビューには、作成されたスクラッチファイル、クエリコンソール、拡張スクリプトを管理できるスクラッチとコンソー...

チュートリアル: Kamal を使用して Rails アプリをデプロイする

Kamal は、コンテナー化された Rails アプリケーション用のデプロイツールです。Capistrano のように SSH 経由でタスクを実行する代わりに、Kamal はアプリケーションの Docker イメージを構築し、レジストリにプッシュして、軽量コンテナー内でサーバー上で実行します。RubyMine では、内蔵ターミナルから直接、またはを使用して Kamal コマンドを実行できます。これにより、IDE を移動することなく、デプロイのトリガー、環境の管理、ログの監視が容易になります。このチ...