Dev Containerでの開発ガイド

このガイドの内容:

  • rails-newツールでRailsアプリケーションを新規作成する方法
  • development containerでアプリケーションを扱う方法

本ガイドは、途中を飛ばさずにステップごとに読み進めるのがベストです。サンプルアプリケーションを実行するにはすべての手順をもれなく実行する必要がありますが、その他のコードや手順は必要ありません。

本ガイドは、dev container(development container)を用いた完全な開発環境のセットアップを支援するためのものです。dev containerは、Railsやその依存関係をローカルコンピュータに直接インストールせず、RailsアプリケーションをDockerコンテナ内で実行するために使われます。これは、Railsアプリケーションを立ち上げて実行する最短の方法です。

これは、Rails をはじめようガイドで説明されている、RubyやRailsを自分のコンピュータに直接インストールする方法とは別の方法です。本ガイドを完了したら、Rails をはじめようガイドでアプリケーション構築作業を続行できます。

1 セットアップとインストール

セットアップを開始するには、必要な関連ツール(Docker、VS Code、rails-new)をインストールしておく必要があります。詳しくは以下で説明します。

1.1 Dockerをインストールする

dev containerはDockerを使って実行されます。Dockerは、アプリケーションを開発・デプロイ・実行を行うオープンなプラットフォームです。Dockerをインストールするには、Dockerドキュメントに記載されている各OS向けのインストール手順に従ってください。

Dockerのインストールが完了したら、Dockerアプリケーションを起動して、マシン上でDockerエンジンの実行を開始します。

1.2 VS Codeをインストールする

Visual Studio Code(VS Code)は、Microsoftによって開発されたオープンソースのコードエディタです。VS Codeの dev container拡張機能を利用することで、コンテナ内の(またはコンテナにマウントされた)フォルダを開けばVisual Studio Codeの機能をすべて利用できるようになります。プロジェクトフォルダ内のdevcontainer.jsonファイルは、明確に定義されたツールや、ランタイムスタックを用いてdev containerにアクセス(または作成)する方法をVS Codeに指示します。これにより、コンテナを直ちに起動して、ターミナルコマンドへのアクセスやコードのデバッグを行うことも、拡張機能の利用も可能になります。

VS Codeは、公式Webサイトからダウンロードしてインストールできます。

dev container拡張機能は、マーケットプレイスからダウンロードしてインストールできます。

1.3 rails-newツールをインストールする

rails-newツールを使うと、自分のコンピュータにRubyがインストールされていなくても新規Railsアプリケーションを生成できるようになります。Dockerを利用してRailsアプリケーションを生成するため、適切なバージョンのRubyやRailsをDockerでインストールできるようになります。

rails-newツールをインストールするには、READMEのインストール手順に従ってください。

2 ブログアプリケーションを作成する

Railsにはジェネレーターと呼ばれる多数のスクリプトが付属しており、特定のタスクの作業を開始するのに必要なものをすべて生成することで開発作業を容易にするように設計されています。新規アプリケーションを作成するジェネレーターもその1つで、新しいRailsアプリケーションの基本部分はこのジェネレータが提供するので、自分でアプリケーションを作成する必要はありません。rails-newツールは、新しいRailsアプリケーションを作成するときにこのジェネレーターを利用します。

以下の例では、UNIX系 OSのターミナルプロンプトを$で表していますが、環境によっては他のプロンプトが表示されるようにカスタマイズされている可能性もあります。

rails-newでアプリを生成するには、ターミナルを開き、ファイルを作成する権限があるディレクトリに移動して、以下のコマンドを実行します。

$ rails-new blog --devcontainer

これによってblogディレクトリが作成され、その中にBlogという名前のRailsアプリケーションが作成されます。

rails-new --helpを実行すると、Railsのアプリケーションジェネレータに渡せるのと同じコマンドラインオプションが表示されていることがわかります。

ブログアプリケーションを作成したら、以下のコマンドを実行してそのディレクトリに移動します。

$ cd blog

このblogディレクトリには、Railsアプリケーションの構造を構成するために生成されたファイルとフォルダが多数含まれています。このチュートリアルの作業のほとんどはappフォルダで行います。このブログアプリケーションの全概要については、Rails をはじめようガイドを参照してください。

3 Blogアプリケーションをdev containerで開く

新しいRailsアプリケーションには、すぐ利用できる形で構成済みのdev containerが付属しています。dev containerの起動と操作にVS Codeを使うことにします。最初に、VS Codeを起動してアプリケーションを開きます。

アプリケーションが開くと、VS Codeは、dev containerのファイルが見つかったことを示すプロンプトを表示し、dev containerでフォルダを再度開けるようになります。緑色の「Reopen in Container(コンテナで再度開く)」ボタンをクリックしてdev containerを作成します。

dev containerのセットアップが完了すると、RubyとRails、そしてすべての依存関係がインストール済みの開発環境が利用可能になります。

VS Code内でターミナルを開いて以下のコマンドを実行すると、Railsがインストールされていることを確認できます。

$ rails --version
Rails 7.2.0

これで、"Rails をはじめよう"ガイドの「railsで「hello」と表示する」セクションからブログアプリケーションの構築を開始できます。構築作業はVS Code内で行うことになります。VS Codeはアプリケーションのdev containerへのエントリポイントの役割を果たすことになるので、コードの実行、テストの実行、アプリケーションの実行はVS Codeから行えるようになります。

フィードバックについて

Railsガイドは GitHub の yasslab/railsguides.jp で管理・公開されております。本ガイドを読んで気になる文章や間違ったコードを見かけたら、気軽に Pull Request を出して頂けると嬉しいです。Pull Request の送り方については GitHub の README をご参照ください。

原著における間違いを見つけたら『Rails のドキュメントに貢献する』を参考にしながらぜひ Rails コミュニティに貢献してみてください 🛠💨✨

本ガイドの品質向上に向けて、皆さまのご協力が得られれば嬉しいです。

Railsガイド運営チーム (@RailsGuidesJP)

支援・協賛

Railsガイドは下記の協賛企業から継続的な支援を受けています。支援・協賛にご興味あれば協賛プランからお問い合わせいただけると嬉しいです。

  1. Star
  2. このエントリーをはてなブックマークに追加