fix horizon build failed

This commit is contained in:
Shao Yu-Lung (Allen) 2021-04-07 21:24:23 +08:00
parent 5b321d6fd7
commit 360dfbe6ec

View File

@ -26,19 +26,24 @@ RUN apk --update add wget \
libmemcached-dev \ libmemcached-dev \
libmcrypt-dev \ libmcrypt-dev \
libxml2-dev \ libxml2-dev \
pcre-dev \
zlib-dev \ zlib-dev \
autoconf \ autoconf \
cyrus-sasl-dev \ cyrus-sasl-dev \
libgsasl-dev \ libgsasl-dev \
supervisor \
oniguruma-dev \ oniguruma-dev \
libressl \
libressl-dev \
supervisor \
procps procps
RUN docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl RUN pecl channel-update pecl.php.net; \
docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl
RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl channel-update pecl.php.net && pecl install memcached-2.2.0 mcrypt-1.0.1 && docker-php-ext-enable memcached \ pecl install memcached-2.2.0 mcrypt-1.0.1 && docker-php-ext-enable memcached \
;else \ ;else \
pecl channel-update pecl.php.net && pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached \ pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached \
;fi ;fi
# Add a non-root user to help install ffmpeg: # Add a non-root user to help install ffmpeg:
@ -158,10 +163,14 @@ RUN set -eux; \
ARG INSTALL_PHPREDIS=false ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
# Install Php Redis Extension # Install Php Redis Extension
printf "\n" | pecl install -o -f redis \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
&& rm -rf /tmp/pear \ printf "\n" | pecl install -o -f redis-4.3.0; \
&& docker-php-ext-enable redis \ else \
;fi printf "\n" | pecl install -o -f redis; \
fi; \
rm -rf /tmp/pear; \
docker-php-ext-enable redis; \
fi
ARG INSTALL_FFMPEG=false ARG INSTALL_FFMPEG=false
RUN if [ ${INSTALL_FFMPEG} = true ]; then \ RUN if [ ${INSTALL_FFMPEG} = true ]; then \
@ -222,9 +231,14 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
# Install MongoDB drivers: # Install MongoDB drivers:
ARG INSTALL_MONGO=false ARG INSTALL_MONGO=false
RUN if [ ${INSTALL_MONGO} = true ]; then \ RUN if [ ${INSTALL_MONGO} = true ]; then \
pecl install mongodb \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
&& docker-php-ext-enable mongodb \ pecl install mongo; \
;fi docker-php-ext-enable mongo; \
else \
pecl install mongodb; \
docker-php-ext-enable mongodb; \
fi; \
fi
########################################################################### ###########################################################################
# YAML: extension # YAML: extension
@ -235,16 +249,20 @@ ARG INSTALL_YAML=false
RUN if [ ${INSTALL_YAML} = true ]; then \ RUN if [ ${INSTALL_YAML} = true ]; then \
apk --update add -U --no-cache --virtual temp yaml-dev \ apk --update add -U --no-cache --virtual temp yaml-dev \
&& apk add --no-cache yaml \ && apk add --no-cache yaml \
&& docker-php-source extract \ && docker-php-source extract; \
&& pecl channel-update pecl.php.net \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
&& pecl install yaml \ pecl install yaml-1.3.2; \
elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
pecl install yaml-2.0.4; \
else \
pecl install yaml; \
fi \
&& docker-php-ext-enable yaml \ && docker-php-ext-enable yaml \
&& pecl clear-cache \ && pecl clear-cache \
&& docker-php-source delete \ && docker-php-source delete \
&& apk del temp \ && apk del temp \
;fi ;fi
########################################################################### ###########################################################################
# PHP Memcached: # PHP Memcached:
########################################################################### ###########################################################################