Dockerでapache2のイメージからWEBサーバーを立ち上げる方法

この記事は 2 分で読めます。
概要

Dockerの初心者が、簡単にDockerの使い方を学びたいとき、apache2のhttpdサーバーの環境を構築すると理解が早い。今回は、httpdサーバーのコンテナ立ち上げからweb起動方法までを紹介します。

本記事の読者層

Docker を利用したい方

Dockerでapache2を設定したい方

Apache2をDockerで利用する方法

Dockerの環境

本記事では以下の環境でDockerをインストールします。

  • Docker
    バージョン 20.10.21
  • apache2
    バージョン 2.4.54 (Unix)

apache2の最新版イメージを「Docker Hub」からダウンロードし利用します。

apache2イメージのダウンロードは「Docker Hub」の検索画面から「httpd」で見つけることができます。

https://hub.docker.com/_/httpd

$ sudo docker pull httpd

にて最新版をダウンロードしておきます。

$ sudo sudo docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
wordpress    latest    9ded7abe41a3   8 days ago    615MB
httpd        latest    73c10eb9266e   8 days ago    145MB
mysql        5.7       d410f4167eea   3 weeks ago   495MB
mysql        latest    7484689f290f   3 weeks ago   538MB

本記事では、このMySQLのイメージを使用してDockerの基本的なコマンドの使い方を解説します。

コンテナの基本的コマンド

コマンド意味
1docker pulldocker hubでイメージのダウンロード
2docker rundockerのコンテナ化
3docker ps実行中コンテナのリスト
4doker imagedocker hubでダウンロードしたイメージリスト
5docker stopコンテナの停止
6docker rmコンテナの削除
dockerコマンド一覧

MySQLのコンテナの起動と停止

httpdのコンテナ起動

$ sudo docker run --name apache2 -d -p 8081:80 httpd
ea89699bc8e30d4ac9abd85151147f2182467919992a0a55ce20dee8ae20cd53

コンテナリストの確認

$ sudo docker ps -a
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS                      PORTS
               NAMES
ea89699bc8e3   httpd     "httpd-foreground"       42 seconds ago   Up 41 seconds               0.0.0.0:8081->80/tcp, :::8081->80/tcp   apache2

STATUSが「up」となっているため、駆動しています。

コンテナの停止ならびに削除ならびにの確認

削除方法は以下の通りです。Dockerのコンテナを「docker stop」で止めからでないと、「docker rm」で削除できません。

$ sudo docker stop httpd

$ sudo docker rm httpd

コンテナ内の仮想環境に入る方法

またイメージ内に入るには以下のコマンドを入力します。コマンドプロンプトがでれば問題ありません。

$ sudo docker exec -it apache2 /bin/bash
root@ea89699bc8e3:/usr/local/apache2# 

また、バージョン情報を確認します。

root@ea89699bc8e3:/usr/local/apache2# httpd -v
Server version: Apache/2.4.54 (Unix)
Server built:   Dec 21 2022 11:26:04

Web上で確認

次に「http://localhost:8081」にアクセスを行い、画面上で「It works!」とでれば起動できています。

「WEBサーバー」+「phpサーバー」+「mySQLサーバー」を同時に立ち上げる方法も以下の記事で紹介しています。

まとめ

本記事のまとめ

本記事のまとめは、

Dockerにてhttpdを起動する場合、

(1) Docker pull httpd→Docker run (container ID)

Dockerにhttpdを停止する場合、

(2) Docker stop (container ID)→Docker rm httpd

という手続きが必要である。

関連リンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です