Files
easyappointments/Dockerfile
xavor 8c4798a5fd
Some checks failed
CI / build-test (push) Has been cancelled
first commit
2025-05-31 18:56:37 +02:00

41 lines
1.2 KiB
Docker

# ======================
# Etapa 1: Compilacion
# ======================
FROM php:8.1-cli AS builder
# Instalar herramientas
RUN apt-get update && apt-get install -y \
git curl unzip zip nodejs npm libzip-dev libpng-dev libjpeg-dev \
libfreetype6-dev libonig-dev libxml2-dev
RUN docker-php-ext-install pdo pdo_mysql mbstring zip gd mysqli
# Instalar Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Copiar el codigo fuente
WORKDIR /app
COPY . .
# Instalar dependencias PHP y JS + compilar
RUN composer install --no-dev --optimize-autoloader
RUN npm install && npm run build
# ======================
# Etapa 2: Imagen final
# ======================
FROM php:8.1-apache
RUN apt-get update && apt-get install -y libzip-dev libpng-dev libjpeg-dev \
libfreetype6-dev libonig-dev libxml2-dev && \
docker-php-ext-install pdo pdo_mysql mbstring zip gd mysqli && \
a2enmod rewrite
WORKDIR /var/www/html
# Copiar solo los archivos ya listos desde la etapa anterior
COPY --from=builder /app /var/www/html
# Permisos adecuados
RUN chown -R www-data:www-data /var/www/html && chmod -R 755 /var/www/html