FROM php:7.4-cli RUN DEBIAN_FRONTEND=noninteractive \ apt-get update && \ apt-get -y install \ gettext \ libssl-dev \ unzip \ wget \ zip \ && rm -rf /var/lib/apt/lists/* # Install Xdebug RUN yes | pecl install xdebug \ && echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name xdebug.so)" > /usr/local/etc/php/conf.d/xdebug.ini # Install Composer. RUN curl -sS https://getcomposer.org/installer | php -- \ --filename=composer --install-dir=/usr/local/bin # Install dumb-init. RUN wget -O /usr/local/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.1/dumb-init_1.2.1_amd64 RUN chmod +x /usr/local/bin/dumb-init # Create a directory for project sources and user's home directory RUN mkdir /usr/local/src/wellrested && \ chown -R www-data:www-data /usr/local/src/wellrested && \ chown -R www-data:www-data /var/www COPY ./src /usr/local/src/wellrested/src COPY ./test /usr/local/src/wellrested/test COPY ./composer.* /usr/local/src/wellrested/ COPY ./phpunit.xml.dist /usr/local/src/wellrested/ # Add symlinks for phpunit and psalm for easier running RUN ln -s /usr/local/src/wellrested/vendor/bin/phpunit /usr/local/bin/phpunit RUN ln -s /usr/local/src/wellrested/vendor/bin/psalm /usr/local/bin/psalm WORKDIR /usr/local/src/wellrested USER www-data ENTRYPOINT ["dumb-init", "--"] RUN composer install