Blame view

api/Dockerfile 1.33 KB
0d8c0f816   Thanasis Naskos   initial commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  FROM php:7.4-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 \
      postgresql-server-dev-11 \
      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 pdo_pgsql exif pcntl
  RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-freetype=/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
  
  # Add user for laravel application
  RUN groupadd -g 1000 www
  RUN useradd -u 1000 -ms /bin/bash -g www www
6480542c3   George Vlahavas   No need for copyi...
38
  # Copy existing application directory contents with correct permissions
0d8c0f816   Thanasis Naskos   initial commit
39
  COPY --chown=www:www . /var/www
1b77eba4c   George Vlahavas   Add PHP configura...
40
  # Copy PHP configuration
b33a72c90   George Vlahavas   Fix local.ini loc...
41
  COPY ./php/local.ini /usr/local/etc/php/conf.d/local.ini
1b77eba4c   George Vlahavas   Add PHP configura...
42

385851593   George Vlahavas   Install deps and ...
43
44
45
46
47
  # Use composer to install dependencies
  RUN composer install
  
  # Create and populate the databases
  RUN php artisan migrate:fresh --seed --force
0d8c0f816   Thanasis Naskos   initial commit
48
49
50
51
52
53
  # Change current user to www
  USER www
  
  # Expose port 9000 and start php-fpm server
  EXPOSE 9000
  CMD ["php-fpm"]