Newer
Older

Yassine Doghri
committed
####################################################
# Castopod Host development Docker file
####################################################
# NOT optimized for production
# should be used only for development purposes
####################################################
FROM php:8.0-fpm

Yassine Doghri
committed
LABEL maintainer="Yassine Doghri <yassine@doghri.fr>"

Yassine Doghri
committed
COPY . /castopod-host
WORKDIR /castopod-host

Yassine Doghri
committed
# Install composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

Yassine Doghri
committed
# Install latest npm

Yassine Doghri
committed
RUN apt-get update && \
apt-get install -y --no-install-recommends gnupg && \
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \
apt-get update && \
apt-get install -y --no-install-recommends nodejs && \
npm install --global npm

Yassine Doghri
committed
# Install git + vim
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y git vim
### Install CodeIgniter's server requirements
#-- https://github.com/codeigniter4/appstarter#server-requirements
# Install intl extension using https://github.com/mlocati/docker-php-extension-installer
RUN apt-get update && apt-get install -y \
libicu-dev \
&& docker-php-ext-install intl
RUN docker-php-ext-configure gd --with-jpeg \

Yassine Doghri
committed
&& docker-php-ext-install gd
RUN pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis
RUN docker-php-ext-install mysqli && docker-php-ext-enable mysqli
RUN echo "file_uploads = On\n" \

Yassine Doghri
committed
"memory_limit = 512M\n" \
"upload_max_filesize = 500M\n" \
"post_max_size = 512M\n" \
"max_execution_time = 300\n" \
> /usr/local/etc/php/conf.d/uploads.ini
# install cron
RUN apt-get update && \
apt-get install -y cron
RUN crontab /castopod-host/crontab