はじめに
この記事では、初学者がPHPを学ぶためのDocker環境を構築する手順を紹介します。
個人の備忘録程度の走り書きとなっておりますが、温かい目で見守っていただければ幸いです。
Makefileを活用し、ビルドから起動、ログ確認までを簡潔に行えるようにしています。
書こうと思ったきっかけ
個人的にPHPのキャッチアップをしたくて、勉強している初学者による備忘録としてまとめました。
DockerやMakefileに不慣れな方にも参考になれば幸いです。
内容
ディレクトリ構成
php-docker/
├── Dockerfile
├── docker-compose.yml
├── Makefile
└── src/
└── index.php
Dockerfile
FROM php:8.2-apache
# Apacheでindex.phpを読み込むためにmod_rewriteを有効化
RUN a2enmod rewrite
# 作業ディレクトリを /var/www/html に設定
WORKDIR /var/www/html
# ソースコードをコンテナ内にコピー
COPY src/ /var/www/html/
docker-compose.yml
version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ./src:/var/www/html
Makefile
.PHONY: build up down logs start
build:
docker compose build
up:
docker compose up -d
down:
docker compose down
logs:
docker compose logs -f
start:
docker compose up --build
src/index.php
<?php
echo "Hello, PHP on Docker!";
?>
使い方(コマンド一覧)
make build # イメージをビルド
make up # コンテナをバックグラウンドで起動
make logs # ログを確認(リアルタイム)
make down # コンテナを停止して削除
make start # ビルド+起動+リアルタイムログ(初回に便利)
http://localhost:8080
にアクセスすれば、PHPの出力が表示されます。
実際の画面
実際の起動ログ
まとめ
この環境を活用することで、Docker 上で効率的に PHP の学習を進められると感じています。今後は Laravel や MySQL なども追加し、より実践的な開発環境へと発展させていく予定です。
しばらくの間、PHP に関する記事の投稿が増えるかと思いますが、どうぞよろしくお願いいたします。