この章で学べること
1. なぜコンテナを学ぶのか
コンテナは現代のアプリケーション開発・運用におけるデファクトスタンダードです。「開発環境では動くのに本番環境では動かない」という環境差異の問題を解消し、どこでも同じように動くアプリケーションの実行環境を実現します。AWS上でコンテナを動かすには、ECRやECS/Fargateの理解が必須です。
この章では、Dockerの基本操作から、AWS上でコンテナアプリケーションをデプロイするまでを段階的に学びます。
2. 学べること・身につくこと
この章を修了すると、以下のスキルが身につきます。
| スキル | 内容 |
|---|---|
| Dockerの基本操作 | コンテナの起動・停止・削除・ログ確認などの基本コマンドを使いこなせる |
| Dockerfileの作成 | Dockerfileを書いてアプリケーションのコンテナイメージをビルドできる |
| マルチステージビルド | 不要なファイルを除いた最適なイメージを構築できる |
| コンテナ間通信 | Dockerネットワークを使ってコンテナ同士を連携させられる |
| データ永続化 | ボリュームとバインドマウントでコンテナのデータを永続化できる |
| 複数コンテナ管理 | Docker Composeで複数コンテナを一括で起動・停止できる |
| AWSへのデプロイ | ECR/ECS/Fargateを使ってAWS上にコンテナアプリケーションをデプロイできる |
3. こんな方におすすめ
- アプリケーションの本番環境構築を担当するインフラエンジニアの方
- 開発環境と本番環境の差異に悩んでいる方
- マイクロサービスアーキテクチャの基盤を学びたい方
- AWS上でコンテナを動かす方法を知りたい方
4. 講座一覧
| 講座名 | 種別 | 概要 | 目安時間 | 料金の目安 |
|---|---|---|---|---|
| コンテナの概要 | 講座 | コンテナ技術の概要と仮想マシンとの違い | 20分 | – |
| Dockerの基本操作 | 講座 | コンテナの起動・停止・削除などの基本コマンド | 45分 | – |
| Dockerfileの基本文法 | 講座 | Dockerfileの命令とイメージのビルド | 45分 | – |
| マルチステージビルド | 講座 | マルチステージビルドによるイメージの最適化 | 30分 | – |
| Dockerネットワーク | 講座 | コンテナ間通信の仕組みとネットワーク設定 | 30分 | – |
| Dockerストレージ | 講座 | ボリュームとバインドマウントによるデータ永続化 | 30分 | – |
| Dockerで3層アーキテクチャを構築しよう | ハンズオン | Dockerを使ったフロント・API・DBの3層構成の構築 | 90分 | 無料 |
| Docker Compose | 講座 | 複数コンテナの定義と一括管理 | 45分 | – |
| Docker Composeで3層アーキテクチャを構築しよう | ハンズオン | Docker Composeによる3層構成の構築 | 60分 | 無料 |
| Amazon ECR講座 | 講座 | コンテナレジストリの仕組みとイメージ管理 | 20分 | – |
| Amazon ECS / Fargate講座 | 講座 | ECSとFargateによるコンテナ実行環境 | 30分 | – |
| ECSとFargateでシンプルなWebアプリをデプロイしよう | ハンズオン | ECS/Fargateへのコンテナデプロイ | 90分 | 約200〜500円 |
| ECSとFargateで本格的なWebアプリをデプロイしよう | ハンズオン | VPC・RDS・ECSを組み合わせた本格的なデプロイ | 120分 | 約300〜800円 |
5. この章を学んだら
この章で学んだ内容を実際の成果物に落とし込みたい場合は、章末尾の応用課題に挑戦してみてください。タスク管理APIをコンテナ化し、Docker Compose でローカル起動した上で、ECS/Fargate にデプロイする課題です。
応用課題の課題内容は誰でも閲覧できます。メンターによる成果物レビューや実装の壁打ちはポートフォリオプランでご提供しています。
6. 前提知識
7. 関連する章
- Infra as Code(Terraform)講座では、本講座のECS/Fargate環境をTerraformでコード化する方法を学べます
- CI/CDパイプライン講座では、本講座のコンテナをGitHub Actionsから自動デプロイする方法を学べます