1
- # PHP 8.1.13
2
- # FROM php:8.1-alpine
3
- FROM php@sha256:f9e31f22bdd89c1334a03db5c8800a5f3b1e1fe042d470adccf58a29672c6202
1
+ # PHP 8.1.27
2
+ # FROM php:8.1
3
+ FROM php@sha256:9b5dfb7deef3e48d67b2599e4d3967bb3ece19fd5ba09cb8e7ee10f5facf36e0
4
4
MAINTAINER Martin Zurowietz <
[email protected] >
5
5
LABEL org.opencontainers.image.source https://github.com/biigle/core
6
6
7
- ARG OPENCV_VERSION=4.6.0-r3
8
- RUN apk add --no-cache \
9
- eigen \
7
+ RUN LC_ALL=C.UTF-8 apt-get update \
8
+ && apt-get install -y --no-install-recommends \
10
9
ffmpeg \
11
- lapack \
12
- openblas \
13
- py3-numpy \
14
10
python3 \
15
- py3-opencv="$OPENCV_VERSION"
11
+ python3-numpy \
12
+ python3-opencv \
13
+ python3-scipy \
14
+ python3-sklearn \
15
+ python3-matplotlib \
16
+ python3-shapely \
17
+ && apt-get -y autoremove \
18
+ && apt-get clean \
19
+ && rm -r /var/lib/apt/lists/*
16
20
17
21
RUN ln -s "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
18
22
ADD ".docker/all-php.ini" "$PHP_INI_DIR/conf.d/all.ini"
19
23
20
- RUN apk add --no-cache \
21
- libxml2 \
22
- libzip \
23
- openssl \
24
- postgresql \
25
- && apk add --no-cache --virtual .build-deps \
24
+ RUN LC_ALL=C.UTF-8 apt-get update \
25
+ && apt-get install -y --no-install-recommends \
26
26
libxml2-dev \
27
27
libzip-dev \
28
- postgresql-dev \
29
- && docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \
28
+ libpq-dev \
29
+ && apt-get install -y --no-install-recommends \
30
+ libxml2 \
31
+ libzip4 \
32
+ postgresql-client \
33
+ && docker-php-ext-configure pgsql -with-pgsql=/usr/bin/pgsql \
30
34
&& docker-php-ext-install -j$(nproc) \
31
35
exif \
32
36
pcntl \
@@ -35,15 +39,29 @@ RUN apk add --no-cache \
35
39
pgsql \
36
40
soap \
37
41
zip \
38
- && apk del --purge .build-deps
42
+ && apt-get purge -y \
43
+ libxml2-dev \
44
+ libzip-dev \
45
+ libpq-dev \
46
+ && apt-get -y autoremove \
47
+ && apt-get clean \
48
+ && rm -r /var/lib/apt/lists/*
39
49
40
50
# Configure proxy if there is any. See: https://stackoverflow.com/a/2266500/1796523
41
51
RUN [ -z "$HTTP_PROXY" ] || pear config-set http_proxy $HTTP_PROXY
42
- RUN apk add --no-cache yaml \
43
- && apk add --no-cache --virtual .build-deps g++ make autoconf yaml-dev \
52
+
53
+ RUN LC_ALL=C.UTF-8 apt-get update \
54
+ && apt-get install -y --no-install-recommends \
55
+ libyaml-dev \
56
+ && apt-get install -y --no-install-recommends \
57
+ libyaml-0-2 \
44
58
&& pecl install yaml \
45
- && docker-php-ext-enable yaml \
46
- && apk del --purge .build-deps
59
+ && printf "\n " | docker-php-ext-enable yaml \
60
+ && apt-get purge -y \
61
+ libyaml-dev \
62
+ && apt-get -y autoremove \
63
+ && apt-get clean \
64
+ && rm -r /var/lib/apt/lists/*
47
65
48
66
ARG PHPREDIS_VERSION=5.3.7
49
67
RUN curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/${PHPREDIS_VERSION}.tar.gz \
@@ -53,70 +71,38 @@ RUN curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/${
53
71
&& mv phpredis-${PHPREDIS_VERSION} /usr/src/php/ext/redis \
54
72
&& docker-php-ext-install -j$(nproc) redis
55
73
56
- ENV PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}"
57
- # Install vips from source because the apk package does not have dzsave support! Install
58
- # libvips and the vips PHP extension in one go so the *-dev dependencies are reused.
59
- ARG LIBVIPS_VERSION=8.12.2
60
- ARG PHP_VIPS_EXT_VERSION=1.0.13
61
- RUN apk add --no-cache --virtual .build-deps \
62
- autoconf \
63
- automake \
64
- build-base \
65
- expat-dev \
66
- glib-dev \
67
- libgsf-dev \
68
- libjpeg-turbo-dev \
69
- libpng-dev \
70
- tiff-dev \
71
- && apk add --no-cache \
72
- expat \
73
- glib \
74
- libgsf \
75
- libjpeg-turbo \
76
- libpng \
77
- tiff \
78
- && cd /tmp \
79
- && curl -L https://github.com/libvips/libvips/releases/download/v${LIBVIPS_VERSION}/vips-${LIBVIPS_VERSION}.tar.gz -o vips-${LIBVIPS_VERSION}.tar.gz \
80
- && tar -xzf vips-${LIBVIPS_VERSION}.tar.gz \
81
- && cd vips-${LIBVIPS_VERSION} \
82
- && ./configure \
83
- --without-python \
84
- --enable-debug=no \
85
- --disable-dependency-tracking \
86
- --disable-static \
87
- && make -j $(nproc) \
88
- && make -s install-strip \
89
- && cd /tmp \
90
- && curl -L https://github.com/libvips/php-vips-ext/raw/master/vips-${PHP_VIPS_EXT_VERSION}.tgz -o vips-${PHP_VIPS_EXT_VERSION}.tgz \
91
- && echo '' | pecl install vips-${PHP_VIPS_EXT_VERSION}.tgz \
74
+ # ENV PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}"
75
+
76
+ RUN LC_ALL=C.UTF-8 apt-get update \
77
+ && apt-get install -y --no-install-recommends \
78
+ libvips-dev \
79
+ && apt-get install -y --no-install-recommends \
80
+ libvips42 \
81
+ && pecl install vips \
92
82
&& docker-php-ext-enable vips \
93
- && rm -r /tmp/* \
94
- && apk del --purge .build-deps \
95
- && rm -rf /var/cache/apk/*
83
+ && apt-get purge -y \
84
+ libvips-dev \
85
+ && apt-get -y autoremove \
86
+ && apt-get clean \
87
+ && rm -r /var/lib/apt/lists/*
96
88
97
89
# Unset proxy configuration again.
98
90
RUN [ -z "$HTTP_PROXY" ] || pear config-set http_proxy ""
99
91
100
- # Other Python dependencies are added with the OpenCV build above.
101
- RUN apk add --no-cache py3-scipy py3-scikit-learn py3-matplotlib py3-shapely
102
-
103
- # Set this library path so the Python modules are linked correctly.
104
- # See: https://github.com/python-pillow/Pillow/issues/1763#issuecomment-204252397
105
- ENV LIBRARY_PATH=/lib:/usr/lib
106
- # Install Python dependencies. Note that these also depend on some image processing libs
107
- # that were installed along with vips.
108
- RUN apk add --no-cache --virtual .build-deps \
109
- python3-dev \
110
- py3-pip \
111
- py3-wheel \
112
- build-base \
113
- libjpeg-turbo-dev \
114
- libpng-dev \
115
- && pip3 install --no-cache-dir \
92
+ RUN LC_ALL=C.UTF-8 apt-get update \
93
+ && apt-get install -y --no-install-recommends \
94
+ python3-pip \
95
+ && pip3 install --no-cache-dir --break-system-packages \
116
96
PyExcelerate==0.6.7 \
117
97
Pillow==10.0.1 \
118
- && apk del --purge .build-deps \
119
- && rm -rf /var/cache/apk/*
98
+ && pip3 install --no-cache-dir --break-system-packages --index-url https://download.pytorch.org/whl/cpu \
99
+ torch==2.0.* \
100
+ torchvision==0.15.* \
101
+ && apt-get purge -y \
102
+ python3-pip \
103
+ && apt-get -y autoremove \
104
+ && apt-get clean \
105
+ && rm -r /var/lib/apt/lists/*
120
106
121
107
WORKDIR /var/www
122
108
0 commit comments