|
2 | 2 |
|
3 | 3 | # @see https://hub.docker.com/_/composer |
4 | 4 | FROM composer:2.1.3 AS php-composer |
| 5 | +RUN /usr/bin/composer -v |
| 6 | + |
| 7 | +# @see https://hub.docker.com/_/php |
| 8 | +FROM php:8.0.7-cli-alpine AS php |
| 9 | +RUN which php; php -v; php -m; php -i | grep etc |
5 | 10 |
|
6 | 11 | # @see https://hub.docker.com/_/python/ |
7 | | -FROM python:3.9.5-alpine3.13 |
| 12 | +FROM python:3.9.5-alpine |
8 | 13 | RUN pip install virtualenv && rm -rf /root/.cache |
| 14 | +RUN python -V |
9 | 15 |
|
10 | 16 | # copy composer from the first stage |
11 | 17 | COPY --from=php-composer /usr/bin/composer /usr/bin |
12 | 18 |
|
13 | | -# set up PHP 8.0 packages repository |
14 | | -# @see https://github.com/codecasts/php-alpine |
15 | | -ADD https://dl.bintray.com/php-alpine/key/php-alpine.rsa.pub /etc/apk/keys/php-alpine.rsa.pub |
16 | | -RUN echo "https://dl.bintray.com/php-alpine/v3.12/php-8.0" >> /etc/apk/repositories |
17 | | - |
18 | | -ENV PHP_VERSION 8.0.1 |
19 | | - |
20 | | -# install dependencies |
21 | | -RUN apk update && apk add \ |
22 | | - php8 \ |
23 | | - php8-bz2 \ |
24 | | - php8-calendar \ |
25 | | - php8-curl \ |
26 | | - php8-ctype \ |
27 | | - php8-exif \ |
28 | | - php8-ftp \ |
29 | | - php8-gettext \ |
30 | | - php8-iconv \ |
31 | | - php8-mbstring \ |
32 | | - php8-opcache \ |
33 | | - php8-openssl \ |
34 | | - php8-pcntl \ |
35 | | - php8-pdo \ |
36 | | - php8-phar \ |
37 | | - php8-posix \ |
38 | | - php8-session \ |
39 | | - php8-shmop \ |
40 | | - php8-soap \ |
41 | | - php8-sockets \ |
42 | | - php8-sodium \ |
43 | | - php8-sysvsem \ |
44 | | - php8-sysvshm \ |
45 | | - php8-xmlreader \ |
46 | | - php8-xml \ |
47 | | - php8-xsl \ |
48 | | - php8-zlib \ |
49 | | - # see https://github.com/elecena/python-php/issues/8 |
50 | | - # The problem seems to be that iconv in musl is not implemented to support that conversion, when using GNU iconv it works. |
51 | | - gnu-libiconv \ |
52 | | - && rm -rf /tmp/* /var/log/* /var/cache/* |
53 | | - |
54 | | -# use GNU iconv in php |
55 | | -ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so php-fpm7 php7" |
| 19 | +# copy PHP binary and required libs |
| 20 | +COPY --from=php /usr/local/bin/php /usr/bin |
| 21 | +COPY --from=php /usr/local/etc/php/* /usr/local/etc/php |
| 22 | +COPY --from=php /usr/lib/*.so.* /usr/lib |
56 | 23 |
|
57 | | -# add a symlink |
58 | | -RUN ln -s /usr/bin/php8 /usr/bin/php |
| 24 | +RUN php -v; php -m |
| 25 | +ENV PHP_VERSION 8.0.7 |
59 | 26 |
|
60 | 27 | # add an info script |
61 | 28 | WORKDIR /opt |
|
0 commit comments