このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
Docker超入門:Docker ComposeでAmazon Linuxコンテナを構築する方法

🐋 Docker ComposeでAmazon Linuxコンテナを構築する方法
ここでは、Docker Composeコマンド を使って Amazon Linuxコンテナ を構築する方法を紹介します。
Amazon Linuxは、AWS(Amazon Web Services)が提供するクラウド向けのLinuxディストリビューションで、AWS環境に最適化されており、高い信頼性とセキュリティを備えています。
Docker上でAmazon Linuxを扱うことで、AWS環境をローカルで再現しながら手軽に学習や開発を行うことができます。
ここで学ぶ内容

💡 Amazon Linuxとは?
Amazon Linux は、AWSが独自に開発しているLinuxディストリビューションです。
クラウド上のアプリケーション開発・運用に特化しており、Amazon EC2 上で動作することを前提に最適化されています。
内部的には Fedoraベース で構築されており、RHEL系ディストリビューションと似ていますが、Red Hat Enterprise Linux(RHEL)のクローンではありません。
URL:https://aws.amazon.com/jp/amazon-linux-2/

| 項目 | 内容 |
|---|---|
| 提供元 | Amazon Web Services(AWS) |
| ベース | Fedora(RHEL系の上流プロジェクト) |
| 主な用途 | EC2環境での開発・運用・デプロイ |
| 特徴 | セキュリティ更新の自動適用、AWS連携に最適化 |
| 公式サイト | https://aws.amazon.com/jp/amazon-linux-2/ |
💬 ポイント:
Amazon Linuxは、EC2インスタンスで利用されることが多いですが、Dockerコンテナでも動作します。
これにより、AWS環境に近いLinuxをローカルで試せる のが大きなメリットです。
🎓 学習環境としてのAmazon Linuxコンテナ

Amazon Linuxコンテナは、AWSの基盤技術に興味がある人にぴったりです。
「EC2上のLinux環境を自分のPCで再現したい」という目的に最適な選択肢といえます。
| 理由 | 説明 |
|---|---|
| AWS互換環境 | EC2に近い環境をローカルで再現可能 |
| 軽量構成 | 最小限のパッケージで高速起動 |
| Red Hat系操作 | DNF/YUMコマンドで学習しやすい。 |
| 安全な実験環境 | 破壊しても簡単に再構築できる。 |
💬 ワンポイント:
AWS CLIやPython boto3などをインストールすれば、AWS連携のテストもコンテナ内で可能です!
🧹 作業前のクリーンアップ
まずは、Docker環境を整理しておきましょう。
古いイメージや停止済みコンテナが残っていると、動作に影響を与える場合があります。
コマンド書式
docker system prune -a --volumes| オプション | 説明 |
|---|---|
| -a | 未使用のイメージも含めて削除 |
| --volumes | 未使用のボリュームも削除 |
このコマンドで、未使用のコンテナ・ネットワーク・ボリュームをまとめて削除できます。
実行時に「Are you sure you want to continue? [y/N]」と表示されたら、y を入力して進めましょう。
実行結果
PS C:\Users\joeac> docker system prune -a --volumes
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all anonymous volumes not used by at least one container
- all images without at least one container associated to them
- all build cache
Are you sure you want to continue? [y/N] y💬 補足:
GUI操作に慣れている人は、Docker Desktopの「Clean / Purge」機能を使ってもOKです。
📁 compose.yamlファイルの作成
続いて、Docker Compose を使ってAmazon Linuxコンテナを作成していきます。
1.作業ディレクトリを準備
cd desktop/docker
mkdir amazonlinux
cd amazonlinux実行結果
PS C:\Users\joeac> cd desktop/docker
PS C:\Users\joeac\Desktop\docker> mkdir amazonlinux
Directory: C:\Users\joeac\Desktop\docker
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2025/10/13 21:37 amazonlinux
PS C:\Users\joeac\Desktop\docker> cd amazonlinux
PS C:\Users\joeac\Desktop\docker\amazonlinux>2.VS Codeを起動
code compose.yamlVS Codeが開いたら、次の内容を入力して保存します👇
🧾 compose.yamlの内容
services:
amazonlinux:
image: amazonlinux:latest
container_name: amazonlinux_container
tty: true| フィールド | 説明 |
|---|---|
| services | Composeファイルのメインセクション(サービス定義を開始) |
| amazonlinux | サービス名(任意) |
| image | 使用するDockerイメージ。ここでは amazonlinux:latest |
| container_name | コンテナの名前(ここでは amazonlinux_container) |
| tty | 仮想端末(TTY)を割り当ててコンテナを維持する設定 |
💡 ポイント:
通常、コンテナは内部のプロセスが終了すると自動停止します。
しかしtty: trueを設定することで、コンテナが常駐状態 になり、対話的操作が可能になります。
🚀 コンテナの作成と起動
compose.yamlを保存したら、Amazon Linuxコンテナを起動してみましょう。
コマンド書式
docker compose up -d| オプション | 説明 |
|---|---|
| up | compose.yamlを元にコンテナを作成・起動 |
| -d | デタッチドモード(バックグラウンド実行) |
実行結果
PS C:\Users\joeac\Desktop\docker\amazonlinux> docker compose up -d
[+] Running 2/2
✔ amazonlinux Pulled 9.0s
✔ fbd59a98b07e Pull complete 5.9s
[+] Running 2/2
✔ Network amazonlinux_default Created 0.1s
✔ Container amazonlinux_container Started 0.8sこのメッセージが出れば、Amazon Linuxコンテナが起動成功です!
Docker Desktopでも緑色の「Running」状態が確認できるはずです。
💻 Amazon Linuxコンテナに接続してみよう
起動したAmazon Linuxコンテナに入って、実際にコマンドを実行してみましょう。
コマンド書式
docker compose exec [options] [service] [command]| 引数 | 説明 |
|---|---|
| options | オプション(例:-uでユーザー指定) |
| service | compose.yamlで定義したサービス名(今回は amazonlinux) |
| command | コンテナ内で実行したいコマンド(例:bash, ls など) |
例:コンテナ内のディレクトリ構成を確認
docker compose exec amazonlinux ls実行結果
PS C:\Users\joeac\Desktop\docker\amazonlinux> docker compose exec amazonlinux ls
bin dev home lib64 media opt root sbin sys usr
boot etc lib local mnt proc run srv tmp varこのようにディレクトリ一覧が表示されれば、コンテナに正常に接続できています✨
あとは自由に dnf install などを使って、Amazon Linux環境を操作してみましょう!
🧠 まとめ
Docker Composeを使えば、AWS向けのAmazon Linux環境も数行で構築できます。
これにより、AWS環境に依存せず、ローカルでの学習・検証・テストが可能になります。
| ステップ | 内容 |
|---|---|
| 1️⃣ | docker system prune -a --volumes で環境を整理 |
| 2️⃣ | compose.yaml に amazonlinux:latest を記述 |
| 3️⃣ | docker compose up -d で起動 |
| 4️⃣ | docker compose exec amazonlinux bash で接続 |
💬 まとめポイント:
Amazon Linuxコンテナは、AWS運用の練習や開発検証に最適。
Docker Composeを使えば、いつでも気軽に再構築できます。
