Skip to content

Commit 1fc1762

Browse files
rybakitnekufa
authored andcommitted
Switch to PHP 8
1 parent b0b003c commit 1fc1762

33 files changed

+1789
-171
lines changed

.dockerignore

+11-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,11 @@
1-
vendor
1+
**/*.log
2+
**/*.md
3+
**/*.php~
4+
**/._*
5+
**/.dockerignore
6+
**/.DS_Store
7+
**/.gitignore
8+
**/Dockerfile
9+
**/Thumbs.db
10+
var/
11+
vendor/

.gitignore

+5-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
vendor
2-
composer.lock
3-
composer.phar
4-
public/admin/downloads
5-
public/admin/ext-6.2.0/
6-
public/admin/fontawesome-free-5.0.6/
1+
/var
2+
/vendor
3+
/public/admin/downloads
4+
/public/admin/ext-6.2.0/
5+
/public/admin/fontawesome-free-5.0.6/

Dockerfile

+38-24
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,60 @@
11
# 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+
510
RUN wget -q https://use.fontawesome.com/releases/v5.0.6/fontawesome-free-5.0.6.zip \
611
&& wget -q http://cdn.sencha.com/ext/gpl/ext-6.2.0-gpl.zip \
712
&& unzip -q ./fontawesome-free-5.0.6.zip \
813
&& unzip -q ./ext-6.2.0-gpl.zip
914

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+
1630

1731
# Runtime
18-
FROM php:7-apache
32+
FROM php:8-apache
1933

2034
WORKDIR /var/www/html
2135

2236
RUN apt-get update && apt-get install -y zip zlib1g-dev libzip-dev libmpdec-dev uuid-dev \
2337
&& docker-php-ext-install zip opcache \
2438
&& pecl install decimal uuid \
2539
&& docker-php-ext-enable decimal uuid \
26-
&& curl -sS https://getcomposer.org/installer | php \
2740
&& a2enmod rewrite
2841

2942
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
3044

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
3748

38-
COPY --from=build /var/www/html/version.php .
49+
RUN mkdir var \
50+
&& chown www-data var \
51+
&& chgrp www-data var
3952

40-
ADD public /var/www/html
41-
ADD . /var/www/html
53+
COPY php php/
54+
COPY public public/
4255

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/

composer.json

+14-8
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,26 @@
11
{
22
"name": "basis-company/tarantool-admin",
3+
"description": "A web interface for Tarantool.",
34
"license": "MIT",
4-
"require": {
5-
"basis-company/framework" : "3.12.4",
6-
"php": "^7.2",
7-
"rybakit/msgpack": "0.7.2",
8-
"symfony/uid": "^5.2.3",
9-
"tarantool/mapper": "4.6.13"
10-
},
115
"authors": [{
126
"name": "Dmitry Krokhin",
137
"email": "[email protected]"
148
}],
9+
"require": {
10+
"php": "^8",
11+
"ext-decimal": "*",
12+
"rybakit/msgpack": "^0.8",
13+
"symfony/uid": "^5.3",
14+
"tarantool/mapper": "^4.6",
15+
"basis-company/framework": "^4.8",
16+
"nyholm/psr7": "^1.4",
17+
"symfony/http-client": "^5.3",
18+
"symfony/cache": "^5.3",
19+
"basis-company/opentelemetry": "^0.0.6"
20+
},
1521
"autoload": {
1622
"psr-4": {
17-
"": "php"
23+
"": "php/"
1824
}
1925
}
2026
}

0 commit comments

Comments
 (0)