FROM php:7.3-fpm-buster MAINTAINER Mark Shust ARG APP_ID=1000 RUN apt-get update && apt-get install -y \ cron \ git \ gzip \ libbz2-dev \ libfreetype6-dev \ libicu-dev \ libjpeg62-turbo-dev \ libmcrypt-dev \ libpng-dev \ libsodium-dev \ libssh2-1-dev \ libxslt1-dev \ libzip-dev \ lsof \ default-mysql-client \ vim \ zip \ procps RUN docker-php-ext-configure \ gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ 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 ARG TARGETARCH RUN cd /tmp \ && ARCH=$(if [ "$TARGETARCH" = "arm64" ]; then echo aarch64; else echo x86-64; fi;) \ && curl -O https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_$ARCH.tar.gz \ && tar zxvf ioncube_loaders_lin_$ARCH.tar.gz \ && export PHP_VERSION=$(php -r "echo PHP_MAJOR_VERSION.'.'.PHP_MINOR_VERSION;") \ && export PHP_EXT_DIR=$(php-config --extension-dir) \ && cp "./ioncube/ioncube_loader_lin_${PHP_VERSION}.so" "${PHP_EXT_DIR}/ioncube.so" \ && rm -rf ./ioncube \ && rm ioncube_loaders_lin_$ARCH.tar.gz \ && docker-php-ext-enable ioncube RUN pecl channel-update pecl.php.net \ && pecl install xdebug \ && docker-php-ext-enable xdebug RUN pecl install ssh2-1.2 \ && docker-php-ext-enable ssh2 RUN pecl install redis \ && docker-php-ext-enable redis RUN groupadd -g "$APP_ID" app \ && useradd -g "$APP_ID" -u "$APP_ID" -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 apt-get install -y msmtp mailutils COPY conf/msmtprc /etc/msmtprc RUN curl -sS https://getcomposer.org/installer | \ php -- --install-dir=/usr/local/bin --filename=composer 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 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/ 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