Blame view

api/Dockerfile 1.26 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
  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 \
58cb3cd7d   George Vlahavas   Merge some steps
22
23
24
      curl && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*
0d8c0f816   Thanasis Naskos   initial commit
25
26
  
  # Install extensions
58cb3cd7d   George Vlahavas   Merge some steps
27
28
29
30
  RUN docker-php-ext-install pdo pdo_pgsql exif pcntl && \
   docker-php-ext-configure gd --with-jpeg=/usr/include/ \
       --with-freetype=/usr/include/ && \
   docker-php-ext-install gd
0d8c0f816   Thanasis Naskos   initial commit
31
32
33
34
35
  
  # Install composer
  RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
  
  # Add user for laravel application
58cb3cd7d   George Vlahavas   Merge some steps
36
37
  RUN groupadd -g 1000 www && \
    useradd -u 1000 -ms /bin/bash -g www www
0d8c0f816   Thanasis Naskos   initial commit
38

6480542c3   George Vlahavas   No need for copyi...
39
  # Copy existing application directory contents with correct permissions
cd64b2c54   George Vlahavas   Use UID/GID for c...
40
  COPY --chown=1000:1000 . /var/www
0d8c0f816   Thanasis Naskos   initial commit
41

1b77eba4c   George Vlahavas   Add PHP configura...
42
  # Copy PHP configuration
b33a72c90   George Vlahavas   Fix local.ini loc...
43
  COPY ./php/local.ini /usr/local/etc/php/conf.d/local.ini
1b77eba4c   George Vlahavas   Add PHP configura...
44

385851593   George Vlahavas   Install deps and ...
45
46
  # Use composer to install dependencies
  RUN composer install
0d8c0f816   Thanasis Naskos   initial commit
47
48
49
50
51
  # Change current user to www
  USER www
  
  # Expose port 9000 and start php-fpm server
  EXPOSE 9000
b1750af76   George Vlahavas   Add a startup script
52
  CMD ["./start.sh"]