表題の通り。そういえばnginxは設定の確認等で使っていたけどApacheはやっていなかったな、と思ってやってみる。
■ 環境
- Apache Httpd 2.4.25
- Docker for Mac 1.13.0
- Mac OSX El Capitan
■ Docker
公式のコンテナイメージがあるようだ。
library/httpd – Docker Hub
https://hub.docker.com/_/httpd/
タグは下記のversionにあるようだ。
- 2.2.32
- 2.4.25
“latest“タグが付いているのが”2.4.25“なのでこれを使うことにする。
$ docker pull httpd
稼働させてみる。nginxと同様に下記のようなオプションでいけるであろう。
$ docker run -ti --rm --name httpd -p 10080:80 httpd
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
[Fri Feb 10 10:18:25.781852 2017] [mpm_event:notice] [pid 1:tid 140331236390784] AH00489: Apache/2.4.25 (Unix) configured -- resuming normal operations
[Fri Feb 10 10:18:25.784835 2017] [core:notice] [pid 1:tid 140331236390784] AH00094: Command line: 'httpd -D FOREGROUND'
別のターミナルから下記のようにアクセスできることを確認。
$ curl localhost:10080
<h1>It works!</h1>
$
このコンテナは”Debian“のようなので設定ファイルの場所に当たりをつけて確認しようとしたのだが、設定ファイルがいつもの場所にない…。Dockerfileを確認してファイルの在り処を探したところ下記にあった。
$ docker exec httpd ls -l /usr/local/apache2/conf/httpd.conf
-rw-r--r-- 1 root www-data 20448 Jan 31 19:42 /usr/local/apache2/conf/httpd.conf
$
“Alpine Linux“のコンテナもあるのでそれも確認してみようかな。
とここまで書いて前にも同じことを書いていることに気がついた…。まぁいいや。
以上。