86 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM php:8.2-fpm
 | 
						|
 | 
						|
# Set working directory
 | 
						|
WORKDIR /var/www/html
 | 
						|
 | 
						|
# Install dependencies
 | 
						|
RUN apt-get update \
 | 
						|
  && apt-get install -y \
 | 
						|
             apt-utils \
 | 
						|
             man \
 | 
						|
             curl \
 | 
						|
             git \
 | 
						|
             bash \
 | 
						|
             vim \
 | 
						|
             zip unzip \
 | 
						|
             acl \
 | 
						|
             iproute2 \
 | 
						|
             dnsutils \
 | 
						|
             fonts-freefont-ttf \
 | 
						|
             fontconfig \
 | 
						|
             dbus \
 | 
						|
             openssh-client \
 | 
						|
             sendmail \
 | 
						|
             libfreetype6-dev \
 | 
						|
             libjpeg62-turbo-dev \
 | 
						|
             icu-devtools \
 | 
						|
             libicu-dev \
 | 
						|
             libmcrypt4 \
 | 
						|
             libmcrypt-dev \
 | 
						|
             libpng-dev \
 | 
						|
             zlib1g-dev \
 | 
						|
             libxml2-dev \
 | 
						|
             libzip-dev \
 | 
						|
             libonig-dev \
 | 
						|
             graphviz \
 | 
						|
             libcurl4-openssl-dev \
 | 
						|
             pkg-config \
 | 
						|
             libldap2-dev \
 | 
						|
             libpq-dev \
 | 
						|
             libbz2-dev \
 | 
						|
             libwebp-dev
 | 
						|
 | 
						|
RUN curl -sL https://deb.nodesource.com/setup_16.x  | bash -
 | 
						|
RUN apt-get -y install nodejs
 | 
						|
 | 
						|
# Clear cache
 | 
						|
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
 | 
						|
 | 
						|
# Install extensions
 | 
						|
RUN docker-php-ext-configure intl --enable-intl && \
 | 
						|
    docker-php-ext-configure bcmath --enable-bcmath && \
 | 
						|
    docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp && \
 | 
						|
    docker-php-ext-install -j$(nproc) gd && \
 | 
						|
    docker-php-ext-install bcmath &&\
 | 
						|
    docker-php-ext-install pdo \
 | 
						|
        pgsql pdo_pgsql \
 | 
						|
        mysqli pdo_mysql \
 | 
						|
        intl iconv mbstring \
 | 
						|
        zip pcntl \
 | 
						|
        exif opcache bz2 \
 | 
						|
        calendar \
 | 
						|
    && pecl install -o -f redis \
 | 
						|
    && rm -rf /tmp/pear \
 | 
						|
    && docker-php-ext-enable redis \
 | 
						|
    && docker-php-source delete
 | 
						|
 | 
						|
# Install composer
 | 
						|
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
 | 
						|
 | 
						|
# Add user for laravel application
 | 
						|
RUN groupadd -g 1000 www
 | 
						|
RUN useradd -u 1000 -ms /bin/bash -g www www
 | 
						|
 | 
						|
# Copy existing application directory contents
 | 
						|
COPY . /var/www
 | 
						|
 | 
						|
# Copy existing application directory permissions
 | 
						|
COPY --chown=www:www . /var/www
 | 
						|
 | 
						|
# Change current user to www
 | 
						|
USER www
 | 
						|
 | 
						|
COPY start.sh /usr/local/bin/start
 | 
						|
 | 
						|
CMD ["/usr/local/bin/start"]
 |