|
| 1 | +FROM composer:latest as composer |
| 2 | +FROM php:fpm |
| 3 | + |
| 4 | +# Define ENVs and ARGs |
| 5 | +ARG XDEBUG_REMOTE_HOST=docker.for.mac.localhost |
| 6 | +ENV XDEBUG_CONFIGURATION_FILE='/usr/local/etc/php/conf.d/xdebug.ini' |
| 7 | +ENV OPCACHE_FILE=$PHP_INI_DIR/conf.d/opcache.ini |
| 8 | + |
| 9 | +# Add the project to the container |
| 10 | +WORKDIR /moon |
| 11 | +ADD . /moon |
| 12 | + |
| 13 | +# Install dependencies for PHP |
| 14 | +RUN apt-get update && \ |
| 15 | + apt-get install -y git zlib1g-dev && \ |
| 16 | + docker-php-ext-install zip |
| 17 | + |
| 18 | +# Install dependecies (dev included) |
| 19 | +COPY --from=composer /usr/bin/composer /usr/bin/composer |
| 20 | +RUN composer install |
| 21 | + |
| 22 | +# Install XDebug and add XDebug configurations |
| 23 | +RUN yes | pecl install xdebug |
| 24 | +RUN echo 'xdebug.idekey=MOON' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 25 | + echo 'xdebug.remote_enable=1' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 26 | + echo 'xdebug.remote_port=9090' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 27 | + echo 'xdebug.remote_connect_back=0' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 28 | + echo 'xdebug.remote_autostart=1' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 29 | + echo 'xdebug.remote_log="/var/log/xdebug/xdebug.log"' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 30 | + echo "xdebug.remote_host=$XDEBUG_REMOTE_HOST" >> $XDEBUG_CONFIGURATION_FILE && \ |
| 31 | + echo ';;settings for profiling' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 32 | + echo 'xdebug.profiler_enable_trigger=1' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 33 | + echo 'xdebug.profiler_output_name=xdebug.out.%t' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 34 | + echo 'xdebug.profiler_output_dir="/tmp/xdebug"' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 35 | + echo 'xdebug.profiler_enable_trigger=1' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 36 | + echo 'xdebug.trace_enable_trigger=1' >> $XDEBUG_CONFIGURATION_FILE && \ |
| 37 | + echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name xdebug.so)" >> $XDEBUG_CONFIGURATION_FILE |
| 38 | + |
| 39 | +RUN mkdir /var/log/xdebug && chmod 0777 /var/log/xdebug |
0 commit comments