Vagrant
Vagrant(英語) は、 Vagrantfile 構成ファイルで定義された仮想マシン環境を構築および管理するためのツールです。 RubyMine は Vagrant との連携を提供し、プロジェクト内で必要なすべてのアクション(Vagrant 環境の初期化から Vagrant コマンドの実行まで)を行うことができます。 さらに、RubyMine により、実行中の仮想マシンをリモートインタープリターとして使用できます。 これは、IDE から直接、分離された環境でアプリケーションを実行、デバッグ、テストできることを意味します。
このトピックでは、RubyMine で利用できる主な Vagrant 機能(Vagrant の構成、ボックスの追加と削除、Vagrant コマンドの実行)について説明します。 また、リモートインタープリターを構成することにより、仮想マシン内で サンプル Rails アプリケーション(英語)を実行する方法も示します。
前提条件
Vagrant での作業を開始するには、次を実行します。
Vagrant(英語) および VirtualBox(英語) をインストールします。
Vagrant プラグインが 有効になっていることを確認してください。
必要に応じて、 Vagrant 設定を構成します。
Vagrant init
開いているプロジェクトの Vagrant 環境を初期化するには、次の手順に従います。
に進みます。
呼び出されたダイアログで、ボックス名と URL を指定します(例:
ボックス名:
ubuntu/bionic64ボックス URL: https://app.vagrantup.com/ubuntu/boxes/bionic64
すでに複数の Vagrant ボックスがある場合は、呼び出された Vagrant ボックスを選択 ポップアップで目的のボックスを選択します。
RubyMine が指定されたボックスをダウンロードし、 Vagrantfile を初期化するまで待ちます。
Vagrantfile を次の方法で変更します。
Vagrant.configure("2") do |config| config.vm.box = "ubuntu/bionic64" config.vm.synced_folder ".", "/home/vagrant/sample_rails_app" config.vm.network "forwarded_port", guest: 3000, host: 3000 endこの構成では、次の設定が指定されています。
box: 仮想マシンの実行に使用されるボックスを指定します。synced_folder: ローカルプロジェクトディレクトリを共有するように 仮想マシンフォルダー(英語)を構成します。network: 仮想マシンをネットワークに接続するために使用されるオプションを指定します。 ここでは、ホストマシンのポートを介して共有するように仮想マシンの ポート(英語)を構成しました。
Vagrant up
Vagrant 環境を初期化した後、 Vagrantfile 設定に基づいて仮想マシンを作成および実行できます。
に進みます。
ブラウザーで、設定した Vagrant ファイルを選択します。
Vagrantfile に 複数のマシン(英語)が定義されている場合は、目的のマシンを選択します。

RubyMine がマシンを作成して実行するまで待ちます。

これで、 SSH を使用してこのマシンに接続し、追加のライブラリをインストールしたり、アプリケーションを実行したりできます。 さらに、このマシンを リモートインタープリターとして構成して、IDE から分離された環境でアプリケーションを実行、デバッグ、テストできます。
実行中のマシンへの SSH
実行中の仮想マシンに接続するには、次の手順に従います。
に進みます。
呼び出されたポップアップで、目的の Vagrant ホストを選択します。
(オプション) 複数のマシンが実行されている場合は、目的のものを選択します。
開いている ターミナル ウィンドウの 127.0.0.1 タブでシェルコマンドを実行できます。たとえば、追加のライブラリのインストールやアプリケーションの実行などが可能です。

Vagrant 設定
設定 ダイアログ Ctrl+Alt+S の ページで、以下の Vagrant 設定を構成できます。
- Vagrant 実行可能ファイル
RubyMine が自動的に検出しなかった場合や、別のファイルを使いたい場合は、Vagrant の実行可能ファイルを指定してください。
サンプル:
vagrant- インスタンスフォルダー
Vagrantfile が 初期化されて保存されるディレクトリへの完全修飾パスを指定します。 デフォルトで、RubyMine は現在のプロジェクトのルートを使用して Vagrant コマンドを実行します。 このディレクトリは、 vagrant up 、vagrant reload、vagrant 停止などの Vagrant コマンドを実行するときに使用されます。
サンプル: /Users/jetbrains/RubymineProjects/sample_rails_app
- プロバイダー
仮想マシンを実行するためのバックエンドとして使用される プロバイダー(英語)を選択します。 必要なプロバイダーを Vagrant プラグインとして プラグインタブにインストールできます。
サンプル:
aws,libvirt- 環境変数
環境変数を使用すると、 プロバイダーの構成に必要な値を渡すことができます。 環境変数を指定するには、 閲覧 ボタン(Shift+Enter )をクリックします。 例: vagrant-aws(英語) プロバイダーでは、AWS_ACCESS_KEY_ID および AWS_SECRET_ACCESS_KEY 環境変数を使用して AWS 認証情報(英語)を渡すことができます。 AWS インスタンスをインスタンス化するときに、 Vagrantfile の変数値を読み取ることができます。
config.vm.provider 'aws' do |aws| aws.access_key_id = ENV['AWS_ACCESS_KEY_ID'] aws.secret_access_key = ENV['AWS_SECRET_ACCESS_KEY'] # ... end- Box
このリストには、使用可能な Vagrant ボックスが表示されます。 新しいボックスを追加するには、
ボタン Alt+Insert をクリックして、ボックス名と URL を指定します。 例:
ボックス名:
ubuntu/bionic64ボックス URL:
https://app.vagrantup.com/ubuntu/boxes/bionic64
選択したボックスを削除するには、
ボタン Alt+Delete をクリックします。
- プラグイン
このテーブルを使用して、 Vagrant プラグイン(英語)を追加、削除、更新します。 例: vagrant-aws(英語) プラグインをインストールするには、
ボタン Alt+Insert をクリックして、呼び出されたダイアログに
vagrant-awsを入力し、 OKです。 をクリックします。