FROM php:8.0-fpm-buster MAINTAINER Mark Shust RUN apt-get update && apt-get install -y \ cron \ default-mysql-client \ git \ gzip \ libbz2-dev \ libfreetype6-dev \ libicu-dev \ libjpeg62-turbo-dev \ libmcrypt-dev \ libonig-dev \ libpng-dev \ libsodium-dev \ libxslt1-dev \ libzip-dev \ lsof \ procps \ vim \ zip RUN docker-php-ext-configure gd --with-freetype --with-jpeg RUN docker-php-ext-install \ bcmath \ bz2 \ calendar \ exif \ gd \ gettext \ intl \ mbstring \ mysqli \ opcache \ pcntl \ pdo_mysql \ soap \ sockets \ sodium \ sysvmsg \ sysvsem \ sysvshm \ xsl \ zip RUN pecl channel-update pecl.php.net \ && pecl install xdebug RUN docker-php-ext-enable xdebug \ && sed -i -e 's/^zend_extension/\;zend_extension/g' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini RUN groupadd -g 1000 app \ && useradd -g 1000 -u 1000 -d /var/www -s /bin/bash app RUN apt-get install -y gnupg \ && curl -sL https://deb.nodesource.com/setup_14.x | bash - \ && apt-get install -y nodejs \ && mkdir /var/www/.config /var/www/.npm \ && chown app:app /var/www/.config /var/www/.npm \ && npm install -g grunt-cli RUN curl -sSLO https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \ && chmod +x mhsendmail_linux_amd64 \ && mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail RUN curl -sS https://getcomposer.org/installer | \ php -- --1 --install-dir=/usr/local/bin --filename=composer RUN mkdir /var/www/.composer-global \ && composer init --working-dir=/var/www/.composer-global --no-interaction \ && composer require --working-dir=/var/www/.composer-global markshust/magento2-metapackage-devtools-cli:^1.0 RUN curl -s https://packages.blackfire.io/gpg.key | apt-key add - \ && echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list \ && apt-get update \ && apt-get install blackfire-agent blackfire-php RUN printf '* *\t* * *\tapp\t%s/usr/local/bin/php /var/www/html/update/cron.php\n' >> /etc/crontab \ && printf '* *\t* * *\tapp\t%s/usr/local/bin/php /var/www/html/bin/magento cron:run\n' >> /etc/crontab \ && printf '* *\t* * *\tapp\t%s/usr/local/bin/php /var/www/html/bin/magento setup:cron:run\n#\n' >> /etc/crontab COPY conf/www.conf /usr/local/etc/php-fpm.d/ COPY conf/php.ini /usr/local/etc/php/ COPY conf/php-fpm.conf /usr/local/etc/ COPY bin/cronstart /usr/local/bin/ RUN mkdir -p /etc/nginx/html /var/www/html /sock \ && chown -R app:app /etc/nginx /var/www /usr/local/etc/php/conf.d /sock USER app:app VOLUME /var/www WORKDIR /var/www/html EXPOSE 9001