1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- 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 \
- gnupg
- # 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 gd --with-gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ --with-png-dir=/usr/include/
- RUN docker-php-ext-install gd
- # 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
- # Copy existing application directory contents
- COPY . /var/www
- # Add user for laravel application
- RUN groupadd -g 1000 hd
- RUN useradd -u 1000 -ms /bin/bash -g hd hd
- # Copy existing application directory permissions
- COPY --chown=hd:hd . /var/www
- ## Install xdebug
- RUN yes | pecl install xdebug \
- && echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name xdebug.so)" > /usr/local/etc/php/conf.d/xdebug.ini \
- && echo "xdebug.remote_enable=on" >> /usr/local/etc/php/conf.d/xdebug.ini \
- && echo "xdebug.remote_autostart=off" >> /usr/local/etc/php/conf.d/xdebug.ini
- # Change current user to www
- USER hd
- # Expose port 9000 and start php-fpm server
- EXPOSE 9000
- CMD ["php-fpm"]
|