60 lines
2.1 KiB
Docker
60 lines
2.1 KiB
Docker
|
|
FROM php:8.3-cli
|
|
|
|
RUN apt update -y && apt upgrade -y
|
|
|
|
RUN apt install -y --no-install-recommends \
|
|
libfreetype-dev \
|
|
libjpeg62-turbo-dev \
|
|
libpng-dev \
|
|
imagemagick \
|
|
libmagickwand-dev \
|
|
git \
|
|
zip unzip \
|
|
openssl libssl-dev libcurl4-openssl-dev \
|
|
autoconf zlib1g-dev \
|
|
python3 python3-venv python3-pip ghostscript\
|
|
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
|
&& docker-php-ext-install -j$(nproc) gd
|
|
|
|
RUN pecl install redis
|
|
RUN docker-php-ext-install opcache
|
|
RUN docker-php-ext-install pdo pdo_mysql
|
|
RUN docker-php-ext-install mysqli
|
|
RUN docker-php-ext-install sockets
|
|
RUN docker-php-ext-install soap
|
|
RUN docker-php-ext-install intl
|
|
|
|
# https://github.com/viest/php-ext-xlswriter
|
|
RUN pecl install xlswriter
|
|
|
|
# https://dev.to/kakisoft/php-docker-how-to-enable-pcntlprocess-control-extensions-1afk
|
|
RUN docker-php-ext-configure pcntl --enable-pcntl && docker-php-ext-install pcntl
|
|
|
|
RUN pecl install apcu
|
|
|
|
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
|
|
|
RUN rm -rf /var/cache/apt/lists
|
|
|
|
# Please refer to the README.md for updating these 2 files.
|
|
#COPY src/composer.json /tmp
|
|
|
|
#RUN cd /tmp && composer install && composer update --optimize-autoloader
|
|
|
|
#RUN mv /tmp/vendor /var/www/html
|
|
#RUN cp /tmp/composer.* /var/www/html
|
|
|
|
#RUN composer clear-cache
|
|
|
|
RUN curl -L https://github.com/roadrunner-server/roadrunner/releases/download/v2024.3.0/roadrunner-2024.3.0-linux-amd64.tar.gz -o /tmp/roadrunner.tar.gz \
|
|
&& tar -xvzf /tmp/roadrunner.tar.gz -C /tmp \
|
|
&& mv /tmp/roadrunner-2024.3.0-linux-amd64/rr /var/www/html/rr \
|
|
&& chmod +x /var/www/html/rr \
|
|
&& rm -rf /tmp/roadrunner.tar.gz /tmp/roadrunner-2024.3.0-linux-amd64
|
|
|
|
# Set PHP configurations for memory, execution time, and file upload sizes
|
|
RUN echo "memory_limit = 1024M" > /usr/local/etc/php/conf.d/custom-php-memlimit.ini; \
|
|
echo "max_execution_time = 500" > /usr/local/etc/php/conf.d/custom-php-time.ini; \
|
|
echo "post_max_size = 100M" > /usr/local/etc/php/conf.d/custom-php-size.ini;
|