今回はDockerで開発環境作るぜ!
持ち運びできるぜ!
と息巻いてDockerImageを作ったわけですが、ステージングサーバではすでにApacheが稼働しているので、それらは変更せずにDockerコンテナ内のApacheも動かそう、という試みです。
状況的にはこんな感じ。
結論から言うと、mod_proxyを使い、内部でポート転送をします。
###Dockerコンテナ作成後のポートを確認
docker ps
CONTAINER ID | IMAGE | COMMAND | CREATED | STATUS | PORTS | NAMES |
---|---|---|---|---|---|---|
0xxxxxxxx | imagename:tag | "/bin/bash" | 1m | 1m | 0.0.0.0:49154->80/tcp | container name |
ということで、49154番ポートがあてがわれていることがわかります。
###Virtual Hostの設定
<VirtualHost {ip-address}:80>
ServerName {domain-name}.com
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:49154/
ProxyPassReverse / http://127:0.0.0:49154/
</VirtualHost>
これでOK。簡単!