Dockerfile 736 B

12345678910111213141516171819202122232425262728293031323334
  1. FROM php:7.4-fpm
  2. # Arguments defined in docker-compose.yml
  3. ARG user
  4. ARG uid
  5. # Install system dependencies
  6. RUN apt-get update && apt-get install -y \
  7. git \
  8. curl \
  9. libpng-dev \
  10. libonig-dev \
  11. libxml2-dev \
  12. zip \
  13. unzip
  14. # Clear cache
  15. RUN apt-get clean && rm -rf /var/lib/apt/lists/*
  16. # Install PHP extensions
  17. RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd
  18. # Get latest Composer
  19. COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
  20. # Create system user to run Composer and Artisan Commands
  21. RUN useradd -G www-data,root -u $uid -d /home/$user $user
  22. RUN mkdir -p /home/$user/.composer && \
  23. chown -R $user:$user /home/$user
  24. # Set working directory
  25. WORKDIR /var/www
  26. USER $user