前回のものからxDebugが使えるように設定する。
ステップ実行ができるところまでは確認済み。
IDEがサーバ、xDebugがクライアントとなる。
手順
下記ファイルを追加して、既存のdocker-compose.ymlを利用して、
docker compose up -d とコマンドを叩いて、IDEを設定すれば良い。
docker-php-ext-xdebug.ini
下記内容のファイルを追加。
zend_extension=xdebug
xdebug.client_host=host.docker.internal
xdebug.client_port = 9003
xdebug.mode=develop,coverage,debug,gcstats,profile,trace
xdebug.start_with_request=yes
000-default.conf
下記行を追加。
DirectoryIndex index.php
Dockerfile
最後のxDebug設定ファイルのコピー部分だけ追加。
FROM php:8.2.11-apache
LABEL authors="shinke1987"
# Composerのインストール。
# Composerの公式ページから引用。
COPY --from=composer/composer:latest-bin /composer /usr/bin/composer
# アップデート。
RUN apt-get update
RUN apt-get -y install less git unzip
# タイムゾーンの設定
RUN cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# pdo_pgsqlで必要。
RUN apt-get -y install libpq-dev
# apachectl status コマンドの実行に必要。
RUN apt-get -y install lynx
# Apacheのファイルをコピー。
COPY ./apache2.conf /etc/apache2/
COPY ./000-default.conf /etc/apache2/sites-available/
# PHPのファイルをコピー。
COPY ./php.ini /usr/local/etc/php/
# Laravelで必要なPHPの拡張ライブラリを設定。
RUN docker-php-ext-install pdo_pgsql
# xDebugインストール。
RUN pecl install xdebug-3.2.2
# xDebug設定。
RUN docker-php-ext-enable xdebug
# xDebug用設定ファイルをコピー。
COPY ./docker-php-ext-xdebug.ini /usr/local/etc/php/conf.d/
# Apache起動。
CMD ["apache2-foreground"]