1
1
# Build
2
- FROM php:7-apache as build
3
- WORKDIR /var/www/html
4
- RUN apt-get update && apt-get install -y git wget zip
2
+ FROM php:8-apache AS build
3
+
4
+ WORKDIR /build
5
+
6
+ RUN apt-get update && apt-get install -y git wget zip libmpdec-dev \
7
+ && pecl install decimal \
8
+ && docker-php-ext-enable decimal
9
+
5
10
RUN wget -q https://use.fontawesome.com/releases/v5.0.6/fontawesome-free-5.0.6.zip \
6
11
&& wget -q http://cdn.sencha.com/ext/gpl/ext-6.2.0-gpl.zip \
7
12
&& unzip -q ./fontawesome-free-5.0.6.zip \
8
13
&& unzip -q ./ext-6.2.0-gpl.zip
9
14
10
- ADD .git /var/www/html/.git
11
- RUN export CI_COMMIT_TAG=$(git describe --tags) \
12
- && export CI_COMMIT_REF_NAME=$(git rev-parse --abbrev-ref HEAD) \
13
- && export CI_COMMIT_SHA=$(git rev-parse --verify HEAD) \
14
- && export CI_COMMIT_SHORT_SHA=$(git rev-parse --verify HEAD | head -c 8) \
15
- && echo "<?php return ['tag'=>'$CI_COMMIT_TAG','sha'=>'$CI_COMMIT_SHA','short_sha'=>'$CI_COMMIT_SHORT_SHA','ref_name'=>'$CI_COMMIT_REF_NAME'];" > version.php
15
+ COPY .git .git/
16
+ RUN CI_COMMIT_TAG=$(git describe --tags) \
17
+ CI_COMMIT_REF_NAME=$(git rev-parse --abbrev-ref HEAD) \
18
+ CI_COMMIT_SHA=$(git rev-parse --verify HEAD) \
19
+ CI_COMMIT_SHORT_SHA=$(git rev-parse --verify HEAD | head -c 8) \
20
+ && echo "<?php return ['tag' => '$CI_COMMIT_TAG', 'sha' => '$CI_COMMIT_SHA', 'short_sha' => '$CI_COMMIT_SHORT_SHA','ref_name'=>'$CI_COMMIT_REF_NAME'];" > version.php
21
+
22
+ COPY php php/
23
+ COPY composer.json composer.lock ./
24
+
25
+ COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
26
+ RUN composer install --prefer-dist --no-dev --no-autoloader --no-scripts --no-progress \
27
+ && composer dump-autoload --classmap-authoritative --no-dev \
28
+ && composer clear-cache
29
+
16
30
17
31
# Runtime
18
- FROM php:7 -apache
32
+ FROM php:8 -apache
19
33
20
34
WORKDIR /var/www/html
21
35
22
36
RUN apt-get update && apt-get install -y zip zlib1g-dev libzip-dev libmpdec-dev uuid-dev \
23
37
&& docker-php-ext-install zip opcache \
24
38
&& pecl install decimal uuid \
25
39
&& docker-php-ext-enable decimal uuid \
26
- && curl -sS https://getcomposer.org/installer | php \
27
40
&& a2enmod rewrite
28
41
29
42
RUN echo "ServerName tarantool-admin" > /etc/apache2/conf-enabled/server-name.conf
43
+ RUN sed -i 's~DocumentRoot.*$~DocumentRoot /var/www/html/public~' /etc/apache2/sites-enabled/000-default.conf
30
44
31
- COPY --from=build /var/www/html/fontawesome-free-5.0.6/on-server ./admin/fontawesome-free-5.0.6
32
- COPY --from=build /var/www/html/ext-6.2.0/build/ext-all.js ./admin/ext-6.2.0/ext-all.js
33
- COPY --from=build /var/www/html/ext-6.2.0/build/classic/theme-crisp ./admin/ext-6.2.0/classic/theme-crisp
34
-
35
- ADD composer.json /var/www/html
36
- RUN php composer.phar install --no-dev
45
+ RUN mkdir -p public/admin/downloads \
46
+ && chown www-data public/admin/downloads \
47
+ && chgrp www-data public/admin/downloads
37
48
38
- COPY --from=build /var/www/html/version.php .
49
+ RUN mkdir var \
50
+ && chown www-data var \
51
+ && chgrp www-data var
39
52
40
- ADD public /var/www/html
41
- ADD . /var/www/html
53
+ COPY php php/
54
+ COPY public public/
42
55
43
- RUN mkdir admin/downloads -p \
44
- && chown www-data admin/downloads \
45
- && chgrp www-data admin/downloads \
46
- && php composer.phar dump-autoload -o
56
+ COPY --from=build /build/fontawesome-free-5.0.6/on-server public/admin/fontawesome-free-5.0.6
57
+ COPY --from=build /build/ext-6.2.0/build/ext-all.js public/admin/ext-6.2.0/ext-all.js
58
+ COPY --from=build /build/ext-6.2.0/build/classic/theme-crisp public/admin/ext-6.2.0/classic/theme-crisp
59
+ COPY --from=build /build/vendor vendor/
60
+ COPY --from=build /build/version.php var/
0 commit comments