30 lines
752 B
Docker
30 lines
752 B
Docker
FROM php:8.3-apache
|
|
|
|
# Install dependencies and PHP extensions
|
|
RUN apt-get update && apt-get install -y \
|
|
libpq-dev \
|
|
curl \
|
|
git \
|
|
libzip-dev \
|
|
&& curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - \
|
|
&& apt-get install -y nodejs \
|
|
&& docker-php-ext-install pdo pdo_pgsql pcntl zip
|
|
|
|
# Enable Apache mod_rewrite
|
|
RUN a2enmod rewrite
|
|
|
|
# Set working directory
|
|
WORKDIR /var/www/html
|
|
|
|
# Copy only package files, install node deps (faster caches)
|
|
COPY package*.json ./
|
|
RUN npm ci --unsafe-perm
|
|
|
|
# Make git accept repo path (prevents dubious ownership)
|
|
RUN git config --global --add safe.directory /var/www/html
|
|
|
|
# Now copy app code
|
|
COPY . .
|
|
|
|
# Install composer
|
|
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer |