mirror of
				https://github.com/BookStackApp/BookStack.git
				synced 2025-11-03 02:13:16 +03:00 
			
		
		
		
	Migrations run without force could fail startup in certain environment conditions (when testing production env). Also updated paths permission handling to update more needed locations.
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM php:8.3-apache
 | 
						|
 | 
						|
# Install additional dependencies
 | 
						|
RUN apt-get update && \
 | 
						|
    apt-get install -y \
 | 
						|
        git \
 | 
						|
        zip \
 | 
						|
        unzip \
 | 
						|
        libfreetype-dev \
 | 
						|
        libjpeg62-turbo-dev \
 | 
						|
        libldap2-dev \
 | 
						|
        libpng-dev \
 | 
						|
        libzip-dev \
 | 
						|
        wait-for-it && \
 | 
						|
    rm -rf /var/lib/apt/lists/*
 | 
						|
 | 
						|
# Install PHP extensions
 | 
						|
RUN docker-php-ext-configure ldap --with-libdir="lib/$(gcc -dumpmachine)" && \
 | 
						|
    docker-php-ext-configure gd --with-freetype --with-jpeg && \
 | 
						|
    docker-php-ext-install -j$(nproc) pdo_mysql gd ldap zip && \
 | 
						|
    pecl install xdebug && \
 | 
						|
    docker-php-ext-enable xdebug
 | 
						|
 | 
						|
# Install composer
 | 
						|
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
 | 
						|
 | 
						|
# Configure apache
 | 
						|
RUN a2enmod rewrite && \
 | 
						|
    sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf && \
 | 
						|
    sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
 | 
						|
 | 
						|
# Use the default production configuration and update it as required
 | 
						|
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" && \
 | 
						|
    sed -i 's/memory_limit = 128M/memory_limit = 512M/g' "$PHP_INI_DIR/php.ini"
 | 
						|
 | 
						|
ENV APACHE_DOCUMENT_ROOT="/app/public"
 | 
						|
 | 
						|
WORKDIR /app
 |