はじめに
Rails 7.2 では、--devcontainer
オプションを使ってプロジェクトを作成することで、Dev Containerを簡単に設定できるようになりました。
実際に自分でセットアップしてみたところ、想像以上に簡単に十分な環境を作成できたので、その手順を紹介します。
構築手順
Dev Containerでの開発ガイドを参考に進めました。
DockerやVSCodeなどは普段から使っているので、これらのインストール手順は省略します。
VS Codeに拡張機能をインストール
VSCodeの拡張機能検索で「Dev Containers」と検索し、拡張機能をインストールします。
Railsプロジェクトを作成
以下のコマンドで Rails プロジェクトを作成します。
rails new myapp --devcontainer [その他付けたいオプション]
ガイドではrails-newツールを使っていますが、自分が慣れている方法でプロジェクトを作成して問題ありません。
--devcontainer
をつけて作成すると、.devcontainer
ディレクトリに設定ファイルが自動生成されます。
自動生成されたファイルの中身を触る必要はありません。
VS Codeでプロジェクトを開いて実行する
VSCodeで作成したプロジェクトを開きます。
すると、devcontainerの設定を検知して「コンテナーで再度開く」かどうかのポップアップが表示されるので、クリックしてDev Containerを使って開き直します。
セットアップを少し待った後、VS Code内でターミナルを開いてrails s
を実行するだけで、すぐにプロジェクトが立ち上がりました。
System Testも簡単
さらに驚いたのは、システムテストがスムーズに行える点です。従来は Seleniumや他の依存関係の設定に時間を取られていましたが、Dev Containerを使用することでその手間がなくなりました。
以下のような簡単なシステムテストコードを書き、実行してみたところ追加のセットアップなしで問題なく動作しました。
設定の手間なくすぐにテストを実行できる環境が整い、コードに集中できることは本当にありがたいです。
まとめ
開発環境の構築には何かと時間がかかるイメージがありますが、Dev Containerを使うことで、簡単にアプリケーションの実行からシステムテストまで行うことができました。
普段は RubyMine を使って開発しているので、今後はそちらでも動作させられるようにしていきたいと思います。
みなさんも是非Dev Containerを活用してみてください!