ブログ

読んで思い出す。忘れるために書く

Docker 環境内で HTML ファイルを表示・編集する

teratail.com

自回答の転記

手っ取り早く動かすなら 公式の httpd イメージcentos/httpd を利用して、 Dockerfile , docker-compose.yml 側の設定で充分だったりする

この動作確認のあと Amazon EC2 Container Registry(Docker レジストリ) とか、EC2 に載せたりとかしてみると実用的な環境の構築をしていけるのかもしれない

ディレクトリ構成とファイル内容

ディレクトリ構成:

.
├── apache
│   ├── Dockerfile
│   └── httpd.conf
├── docker-compose.yml
└── src
    └── index.html

apache/Dockerfile:

FROM centos/httpd

# 設定変更したい場合
ADD httpd.conf /etc/httpd/conf/httpd.conf

httpd.conf:

(Web サーバの動作を設定できるようにファイルを取り出す。設定変更は特にしない)

# 実行対象の Docker イメージから、格納されているものを取り出し
docker run centos/httpd cat /etc/httpd/conf/httpd.conf > apache/httpd.conf

docker-compose.yml:

version: '3'

services:
  apache:
    build: ./apache
    container_name: "apache"
    ports:
      - "8088:80"
    privileged: true
    volumes:
      - ./src:/var/www/html

イメージの作成と立ち上げ

# (docker-compose.yml があるディレクトリに cd して移動)

docker-compose build && docker-compose up

Links