/note/tech

DockerでApache2を起動させた際の作業ログ

Dockerfileを作成

touch Dockerfile

Dockerfileに以下を記述(UbuntuをベースにApache2をインストール)

FROM ubuntu:18.04

MAINTAINER developer

ENV APACHE_RUN_USER www-data
ENV APACHE_RUN_GROUP www-data
ENV APACHE_PID_FILE /var/run/apache2.pid
ENV APACHE_RUN_DIR /var/run/apache2
ENV APACHE_LOG_DIR /var/log/apache2
ENV APACHE_LOCK_DIR /var/lock/apache2

RUN apt-get update && \
    apt-get install -y apache2

EXPOSE 80
CMD ["apachectl", "-D", "FOREGROUND"]

apache2というタグを付けてビルド

docker build -t apache2

イメージが作成されたことを確認(apache2というイメージが存在すればOK)

docker images

コンテナ起動(ホストの80番ポートにポートフォワーディング&バックグラウンドで実行)

docker run -p 80:80 -d apache2

動作確認(HTMLファイルが取得できればOK)

curl http://localhost/

わーい

ついでに、ローカルのディレクトリをコンテナのボリュームとしてマウントしたい。

docker run -v <ローカルのパス>:/var/www/html -p 80:80 -d apache2

指定したローカルのパスにindex.htmlを作成して無事取得できればOK

わーい