PHPプログラムのコンテナローカル開発環境を簡単に最短で立ち上げます!
以下を使います!
- apache 
- htaccess有効な状態 
- ドキュメントルートの設定は.htaccessで行います!
 
 
 - htaccess有効な状態 
 - php 
- バージョン8.3
 
 - mysql 
- バージョン8
 
 
必要なファイル作成
以下のファイルをphpファイルが格納されているフォルダの直下に作成します。
- docker-compose
 - Dockerfile
 - .htaccess
 
docker-composeファイル
<ファイル名>
docker-compose.yml
<ファイルの中身>
version: '3'
services:
    php:
        build:
            # Dockerfileを格納するフォルダのパス
            context: .
            # Dockerfileのファイル名
            dockerfile: Dockerfile
        volumes:
            - .:/var/www/html
        ports:
            - 8000:80
        container_name: php8.3
    mysql:
        image: mysql:8.0
        volumes:
            - /var/lib/mysql
        environment:
            - MYSQL_ROOT_PASSWORD=root
            - MYSQL_DATABASE=test
            - MYSQL_USER=test
            - MYSQL_PASSWORD=test
        container_name: mysql8.0
mysqlはimageの指定箇所のバージョン変更することで別バージョンで立ち上げることも可能です。
Dockerfile
<ファイル名>
Dockerfile
<ファイルの中身>
FROM php:8.3-apache
# htaccess有効化
RUN  a2enmod rewrite
#composer install
COPY --from=composer /usr/bin/composer /usr/bin/composerFromの後のバージョンをいじることで、8.3以外のPHPを入れることも可能です。
composerは一応入れておきます。なくてもOK
.htaccess
<ファイル名>
.htaccess
<ファイルの中身>
RewriteEngine on
RewriteBase /
RewriteRule ^$ {ドキュメンルートへのパス} [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ {ドキュメンルートへのパス}$1 [L]
 {ドキュメンルートへのパス}はご自身の環境に合わせてくださいー
動作確認
以下のコマンドでコンテナを立ち上げます。
docker compose up以下のURLでPHPプログラムが想定通り動いていれば成功です!
http://localhost:8000/ちなみに以下のコマンドでコンテナに入れます
docker compose exec php bashまとめ
簡単に、PHPプログラムのコンテナローカル開発環境ができましたー
ちょっと動かしてみたい場合に使えると思います!

