教材の内容に関係のない質問や教材とは異なる環境・バージョンで進めている場合のエラーなど、教材に関係しない質問は推奨していないため回答できない場合がございます。
その場合、teratailなどの外部サイトを利用して質問することをおすすめします。教材の誤字脱字や追記・改善の要望は「文章の間違いや改善点の指摘」からお願いします。
本教材では、Railsチュートリアルで作成するアプリケーションをCIツールであるGitHub Actionsで自動テストし、AWS(EC2)に自動デプロイする仕組みの構築方法を学びます。
このようなCI/CDパイプラインをあらかじめ構築しておくことで、バグの発生を抑えつつ、アプリケーションの機能追加などを1日に何回も本番環境にリリースすることが可能となります。
CI/CDとは、以下のような仕組みのこととなります。
本教材を通じて、以下について学ぶことができます。
また、周辺知識として以下も解説していきます。
本教材完了時点の構成図は以下になります。
ls
, cd
, pwd
, mkdir
, cat
を使ったことがある)本教材で利用するAWSリソースについては、一部従量制料金の対象のものがあります。
無料利用枠が設定されたスペックのものを使用するなど教材全体で極力料金を抑えるようにしていますが、無料利用枠の無いNATゲートウェイなども作成するため、利用状況に応じた費用が発生します。
あらかじめご了承ください。
本教材はメインテーマである自動デプロイを集中的に学べるよう、AWSのインフラ構築や自動テストについて解説を最小限としている箇所があります。
具体的には、以下の3点について教材の取り扱い範囲外としています。
本教材で登場するAWSのリソースの大半はテンプレートファイル(CloudFormation)を使って自動で作成します。具体的には以下のAWSリソースとなります。
よって、これらのAWSリソースに関しては、AWSの入門教材などでよく登場するような、AWSのマネジメントコンソール(管理画面)でひとつひとつ作成する方法を説明していません。ご注意ください。
なお、以下については詳細に解説します。
以下のような実装はポートフォリオとしては求められるレベルかと思いますが、本教材においては実装方法のヒントを最終章に記載するだけに留めていますので、ご了承ください。
GitHub Actionsで実施する自動テストでは、Railsチュートリアルで実装したRSpecによるテストをそのまま実行するだけに留めています。
RSpecのテストを追加したり、RuboCopによるコードの静的解析を追加するといったことは行なっていませんのでご了承ください。
本教材のローカル開発環境は、教材で用意したDockerの環境をMac OSまたはCloud9から起動させて構築します(構築・利用にあたって必要となるDockerコマンドについては解説するので、Dockerに関する事前知識は不要です)。
なお、このDocker環境はWindowsから直接起動させることも可能だとは思いますが、Windowsは教材の質問対応の対象外としていますのでご注意ください。
教材を進める中で生じたエラーに関する質問や、教材本文の説明内容がわかりにくい場合に再説明を求める質問に関しては回答可能です。
教材で取り扱っているWeb技術に対する広く一般的な質問は回答対象外としていますのでご了承ください。そうした質問はメンターサービスなどをご利用ください。
また、教材のアプリを参考にして作った、独自の実装部分が含まれるアプリのエラーや不具合に関する質問も回答対象外としております。