FROM php:7.2-fpm # Copy composer.lock and composer.json COPY composer.lock composer.json /var/www/ # Set working directory WORKDIR /var/www # Install dependencies RUN apt-get update && apt-get install -y \ build-essential \ mysql-client \ libpng-dev \ libjpeg62-turbo-dev \ libfreetype6-dev \ locales \ zip \ jpegoptim optipng pngquant gifsicle \ vim \ unzip \ git \ curl # Clear cache RUN apt-get clean && rm -rf /var/lib/apt/lists/* # Install extensions RUN docker-php-ext-install pdo_mysql mbstring zip exif pcntl RUN docker-php-ext-configure mcrypt RUN docker-php-ext-install mcrypt # Install composer RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer # Install NodeJs RUN curl -sL https://deb.nodesource.com/setup_11.x | bash - RUN apt-get install -y nodejs # Add user for laravel application RUN groupadd -g 1000 www-data RUN useradd -u 1000 -ms /bin/bash -g www-data www-data # Copy existing application directory contents COPY . /var/www # Copy existing application directory permissions COPY --chown=www-data:www-data . /var/www # Change current user to www-data USER www-data # Expose port 9000 and start php-fpm server EXPOSE 9000 CMD ["php-fpm"]