このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
Docker超入門:UbuntuとNginxでWebサーバーをビルドする①

UbuntuとNginxでWebサーバーをビルドする①
ここでは、UbuntuとNginxを使ってシンプルなWebサーバーをDocker上に構築していきます。少し長めになるので、2回に分けて解説します。今回は Webサーバーを構築するための準備とDockerfileの作成 までを進めます。

不要なコンテナとイメージの削除
まずは作業環境をクリーンにするため、不要なコンテナやイメージを削除します。
実行するコマンドは以下です。既に削除している場合は、コマンドの実行は不要です。
PS C:\Users\joeac> docker system prune -a
WARNING! This will remove:
- all stopped containers
- all networks 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
Total reclaimed space: 0Bこのコマンドは、停止中のコンテナ・未使用のイメージ・ネットワーク・ボリュームをまとめて削除し、ストレージを解放してくれます。
| オプション | 説明 |
|---|---|
| -a | すべての未使用のイメージも削除対象に含める。 |
実行すると「Are you sure you want to continue? [y/N]」と確認されるので「y」と入力します。
削除が完了すると、どれだけ容量が解放されたか「Total reclaimed space」として表示されます。
さらに確認のため、以下のコマンドで削除後の状態をチェックしましょう。
PS C:\Users\joeac> docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
PS C:\Users\joeac> docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE作業ディレクトリの準備
続いて作業用ディレクトリを用意して、そのディレクトリに移動します。
PS C:\Users\joeac> cd desktop/docker
PS C:\Users\joeac\Desktop\docker> mkdir Webserver1
Directory: C:\Users\joeac\Desktop\docker
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2025/09/27 3:30 Webserver1
PS C:\Users\joeac\Desktop\docker> cd Webserver1
PS C:\Users\joeac\Desktop\docker\Webserver1>
この「Webserver1」ディレクトリに、後ほど作成する Dockerfile や index.html を格納していきます。
Webサーバーの構成
今回ビルドするWebサーバーの構成は次のとおりです。
| 項目 | 説明 |
|---|---|
| イメージ名 | webserver1 |
| OS | Ubuntu:latest(最新のUbuntuイメージを使用) |
| AP | nginx(Webサーバーアプリケーション) |
| Webコンテンツ | index.html を /var/www/html に配置 |
このシンプルな構成で、ブラウザからアクセスすると「Nginx Webserver」という文字が表示されるWebサーバーを構築します。

index.htmlの作成
まずはWebページのコンテンツとなる index.html を作成します。
「code index.html」を実行します。
PS C:\Users\joeac\Desktop\docker\Webserver1> code index.htmlVS Codeが起動します。

以下の内容を入力して保存します。このファイルを Webserver1 ディレクトリに保存します。
<HTML>
<BODY>
<H1>Nginx Webserver</H1>
</BODY>
</HTML>Dockerfileの作成
次に、Dockerイメージをビルドするための Dockerfile を作成します。
「code Dockerfile」を実行します。
PS C:\Users\joeac\Desktop\docker\Webserver1> code DockerfileVS Codeが起動します。

以下の内容を入力して保存します。
# Step1 : Ubuntuイメージの作成
FROM ubuntu:latest
# Step2 : Nginxのインストール
RUN apt-get update && apt-get install -y -q nginx
# Step3 : htmlファイルのコピー
COPY index.html /var/www/html
# Step4 : 80番ポートの公開
EXPOSE 80
# Step5 : コマンドの実行(Nginxの開始)
CMD ["nginx","-g","daemon off;"]Dockerfile内の重要ポイント
| コマンド | 説明 |
|---|---|
| FROM ubuntu:latest | Ubuntuの最新イメージをベースにする |
| RUN apt-get update && apt-get install -y -q nginx | パッケージリストを更新し、nginxをインストール |
| COPY index.html /var/www/html | 作成したWebページをNginxの公開ディレクトリにコピー |
| EXPOSE 80 | Webサーバーで利用する80番ポートを公開 |
| CMD ["nginx","-g","daemon off;"] | Nginxをフォアグラウンドで起動 |
特に apt-get install -y -q nginx のオプションは以下の意味があります。
| オプション | 説明 |
|---|---|
| -y | インストール中の確認プロンプトをスキップし、自動実行する。 |
| -q | 出力を最小限にして静かに実行する。 |
まとめ
今回は、UbuntuとNginxを使ったWebサーバー構築の準備として、環境を整理し、index.html と Dockerfile を作成しました。
次回「UbuntuとNginxでWebサーバーをビルドする②」では、いよいよこのDockerfileを使ってイメージをビルドし、コンテナとして実行してWebサーバーを動かしていきます。
