Dockerの初心者が、簡単にDockerの使い方を学びたいとき、apache2のhttpdサーバーの環境を構築すると理解が早い。今回は、httpdサーバーのコンテナ立ち上げからweb起動方法までを紹介します。
- Docker を利用したい方
- Dockerでapache2を設定したい方
Apache2をDockerで利用する方法
Dockerの環境
[[BLOCK_2]] バージョン 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の基本的なコマンドの使い方を解説します。
コンテナの基本的コマンド
#
コマンド
意味
1
docker pull
docker hubでイメージのダウンロード
2
docker run
dockerのコンテナ化
3
docker ps
実行中コンテナのリスト
4
doker image
docker hubでダウンロードしたイメージリスト
5
docker stop
コンテナの停止
6
docker 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 apache2STATUSが「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:04Web上で確認
次に「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
- という手続きが必要である。
関連リンク





コメント