36 lines
1.2 KiB
Docker
36 lines
1.2 KiB
Docker
FROM php:8.4-fpm
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
git curl zip unzip libpng-dev libonig-dev libxml2-dev libzip-dev libicu-dev \
|
|
&& docker-php-ext-install pdo_mysql gd zip pcntl intl bcmath exif \
|
|
&& pecl install redis && docker-php-ext-enable redis \
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
|
|
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
|
&& apt-get install -y nodejs \
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
|
|
ARG UID=1000
|
|
ARG GID=1000
|
|
|
|
RUN groupadd -g ${GID} app \
|
|
&& useradd -u ${UID} -g app -m -s /bin/bash app
|
|
|
|
WORKDIR /var/www/html
|
|
COPY . .
|
|
RUN composer install --no-dev --optimize-autoloader
|
|
|
|
RUN mkdir -p /var/www/html/storage/logs \
|
|
/var/www/html/storage/framework/cache \
|
|
/var/www/html/storage/framework/sessions \
|
|
/var/www/html/storage/framework/views \
|
|
/var/www/html/storage/app/public \
|
|
/var/www/html/storage/app/uploads \
|
|
/var/www/html/bootstrap/cache \
|
|
&& chown -R app:app /var/www/html/storage /var/www/html/bootstrap/cache \
|
|
&& chmod -R 775 /var/www/html/storage /var/www/html/bootstrap/cache
|
|
|
|
USER app
|