Docker

Dockerを使ってApacheを構築する方法解説【Webサーバーを簡単に構築する】

こんにちは、フルスタックエンジニアのryuです。

今回の記事はDockerを使ってApacheを構築する方法を解説します。ApacheとはWebサーバーを構築するためのソフトウェアです。Dockerを使用して簡単にWebサーバーをローカル環境に構築することができます。Webサイトの開発環境をローカルに作成する場合に便利です。

Dockerを使ってApacheを構築する方法解説

DockerでApache環境はどうやって作成するの・・・?

今回の記事では、Dockerを使ってApacheを構築する方法の解説を行います。docker-compose.ymlファイルの作成から解説します。手順は以下の通りです。

  • docker-compose.ymlファイルの作成
  • Apacheのコンテナを起動
  • Webサイトに接続できるか確認

では、早速解説します!

Apacheのdocker-compose.ymlファイル

まず、Apacheのdocker-compose.ymlファイルを作成します。

docker-compose.ymlとは、コンテナを起動させるための設定ファイルです。docker-composeが良く分からない方はこちらの記事をご覧ください。

docker-composeとは?dockerコマンドとの違いを理解しよう【Docker入門⑥】

では、docker-compose.ymlファイルを作成しましょう。ファイルの中身は以下のようになります。

version: "3"
services:
  web:
    image: httpd
    volumes:
     - .:/usr/local/apache2/htdocs/
    ports:
      - "80:80"

ファイルの中身について説明します。

docker-compose.ymlファイルの中身解説

先ほど作成したdocker-compose.ymlファイルの解説をします。ファイル内では、以下の3つの設定を行っています。

  • image
  • volumes
  • ports

まず、imageについてです。imageはDockerのイメージを指定します。

今回使用するのは、httpdを使用します。DockerHubに保存されているイメージをpullしてローカル環境に引っ張っています。

httpdのイメージの詳細はこちらをご覧ください。

httpd (docker.com)

次にvolumesです。これはローカルのディレクトリとdockerコンテナ内のディレクトリを共有します。index.htmlなどWebコンテンツを保存するために、共有しています。

最後にportsです。これはローカルPCのポートとコンテナのポートを接続します。つまり、ローカルの80にアクセスした場合、コンテナの80にアクセスされることになります。

Apacheのコンテナを起動してみる

先ほどまでdocker-compose.ymlファイルの準備をしました。ファイルの準備が完了したら、Apacheのコンテナを起動してみましょう。

Apacheで表示するWebコンテンツの準備

Apacheを起動する前にWebコンテンツの準備をしましょう。Webサイトに表示させる文字です。

index.htmlファイルを作成して、docker-compose.ymlと同じディレクトリに配置しましょう。

<h1>test</h1>

これで準備完了です!

Apacheコンテナを起動する

では、コンテナを起動してみましょう。起動するコマンドは以下の通りです。

docker-compose up -d

コマンドを実行すると、Dockerhub上からhttpdイメージをpullします。doneという文字が表示されたら完了です。

docker-compose up -d

コンテナが起動しているか確認してみましょう。

docker ps

“docker ps”コマンドを使用すると、起動しているコンテナを確認することができます。

Webサイトにアクセスして確認する

最後に動作確認を行います。

ブラウザで「http://localhost」と入力します。そうすると先ほど作成したindex.htmlの中身が表示されます。

Apacheにアクセスできるか確認

docker-composeを使用すれば、簡単にApache環境を構築することができました。

Dockerを使ってApacheを構築する方法まとめ

今回の記事では、Dockerを使ってApacheを構築する方法を解説しました。まとめると以下のようになります。

  • docker-compose.ymlファイルの作成
  • Apacheのコンテナを起動
  • Webサイトに接続できるか確認

開発環境をローカルで作成するときは便利なので、ぜひ覚えておきましょう。

当ブログでは、インフラに関する技術を発信しているので興味のある方は是非ご覧ください。

さらにDockerを勉強したい方は、こちらの動画や参考書がオススメです。

ゼロからはじめる Dockerによるアプリケーション実行環境構築

ABOUT ME
ryu
大手メーカのIT部門でインフラエンジニアやってます。 サーバ、ネットワーク、セキュリティ、クラウドについて投稿します。 AI、ARも勉強中です! youtubeでも技術ネタを発信していきます。↓のアイコンよりご覧ください!