fix docker configuration

This commit is contained in:
Mohit Panjwani
2021-12-03 21:03:58 +05:30
parent 5321871cda
commit 423e30b16e
3 changed files with 48 additions and 55 deletions

View File

@ -1,49 +1,40 @@
FROM php:7.4-fpm-alpine
FROM php:7.4-fpm
# Arguments defined in docker-compose.yml
ARG user
ARG uid
# Install system dependencies
RUN apt-get update && apt-get install -y \
git \
curl \
libpng-dev \
libonig-dev \
libxml2-dev \
zip \
unzip \
libzip-dev \
libmagickwand-dev \
mariadb-client
# Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
RUN pecl install imagick \
&& docker-php-ext-enable imagick
# Install PHP extensions
RUN docker-php-ext-install pdo_mysql mbstring zip exif pcntl bcmath gd
# Get latest Composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
# Create system user to run Composer and Artisan Commands
RUN useradd -G www-data,root -u $uid -d /home/$user $user
RUN mkdir -p /home/$user/.composer && \
chown -R $user:$user /home/$user
# Set working directory
WORKDIR /var/www
RUN apk add --no-cache \
$PHPIZE_DEPS \
freetype-dev \
git \
zip \
libzip-dev \
php7-bcmath \
curl \
unzip \
libjpeg-turbo-dev \
libpng-dev \
libxml2-dev \
mariadb-client \
sqlite \
php7-json \
php7-openssl \
php7-pdo \
php7-pdo_mysql \
php7-session \
php7-simplexml \
php7-tokenizer \
php7-xml \
imagemagick \
imagemagick-libs \
imagemagick-dev \
php7-imagick \
php7-pcntl \
--repository http://dl-cdn.alpinelinux.org/alpine/v3.13/community/ gnu-libiconv=1.15-r3
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so php
RUN printf "\n" | pecl install \
imagick && \
docker-php-ext-enable --ini-name 20-imagick.ini imagick
RUN docker-php-ext-configure zip
RUN docker-php-ext-install zip
RUN docker-php-ext-install iconv pdo pdo_mysql bcmath pcntl exif
RUN docker-php-ext-configure gd --with-jpeg --with-freetype
RUN docker-php-ext-install gd
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php composer-setup.php \
&& php -r "unlink('composer-setup.php');" \
&& mv composer.phar /usr/bin/composer
USER $user

View File

@ -27,6 +27,7 @@ class Kernel extends ConsoleKernel
*/
protected function schedule(Schedule $schedule)
{
if (\Storage::disk('local')->has('database_created')) {
$schedule->command('check:invoices:status')
->daily();
@ -40,6 +41,7 @@ class Kernel extends ConsoleKernel
})->cron($recurringInvoice->frequency);
}
}
}
/**
* Register the Closure based commands for the application.

View File

@ -1,4 +1,4 @@
version: '3.7'
version: '3'
services:
app:
@ -39,7 +39,7 @@ services:
image: nginx:1.17-alpine
restart: unless-stopped
ports:
- 8080:80
- 80:80
volumes:
- ./:/var/www
- ./docker-compose/nginx:/etc/nginx/conf.d/