Mise à jour cURL Ne fonctionne pas dans PHP

J'ai une application en cours d'exécution Docker, Basé sur
https://hub.docker.com/_/php/
.

Je l'ai développé avant la mise à jour

cURL

et faire fonctionner avec

nghttp2

et

openssl

, Ce que j'ai besoin de soutenir HTTP / 2 Dans ma candidature.

Pourtant, PHP Ne reflète pas les changements et je ne sais pas pourquoi.

Voici mon Dockerfile:

FROM php:7.0.3-fpm

# Add sources that allow installation of unstable packages (needed for latest OpenSSL/cURL versions).
RUN echo 'deb [url=http://ftp.uk.debian.org/debian]http://ftp.uk.debian.org/debian[/url] testing main contrib \n\
deb-src [url=http://ftp.uk.debian.org/debian]http://ftp.uk.debian.org/debian[/url] testing main contrib \n\
deb [url=http://ftp.debian.org/debian/]http://ftp.debian.org/debian/[/url] jessie-updates main contrib \n\
deb-src [url=http://ftp.debian.org/debian/]http://ftp.debian.org/debian/[/url] jessie-updates main contrib \n\
deb [url=http://security.debian.org/]http://security.debian.org/[/url] jessie/updates main contrib \n\
deb-src [url=http://security.debian.org/]http://security.debian.org/[/url] jessie/updates main contrib' > /etc/apt/sources.list \
&& apt-get update

# Install OpenSSL, nghttp2 and cURL (required to make HTTP/2 requests).
RUN apt-get install -y openssl nghttp2 curl

# Install other dependencies.
RUN apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng12-dev \
&& docker-php-ext-install pdo_mysql mbstring sockets zip bcmath \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install gd

# Copy custom PHP.ini
COPY php.ini /usr/local/etc/php/

# Run php-fpm.
CMD ["php-fpm"]


curl --version

Les sorties:

curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.9 zlib/1.2.8 libidn/1.29 libssh2/1.4.3 nghttp2/1.7.1 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets


openssl version

Les sorties:

OpenSSL 1.0.2f  28 Jan 2016

De toute façon,

php -i

Les sorties:

curl

cURL support => enabled
cURL Information => 7.38.0
Age => 3
Features
AsynchDNS => Yes
CharConv => No
Debug => No
GSS-Negotiate => No
IDN => Yes
IPv6 => Yes
krb4 => No
Largefile => Yes
libz => Yes
NTLM => Yes
NTLMWB => Yes
SPNEGO => Yes
SSL => Yes
SSPI => No
TLS-SRP => Yes
HTTP2 => No
GSSAPI => Yes
Protocols => dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtmp, rtsp, scp, sftp, smtp, smtps, telnet, tftp
Host => x86_64-pc-linux-gnu
SSL Version => OpenSSL/1.0.1k
ZLib Version => 1.2.8
libSSH Version => libssh2/1.4.3

Notez que

cURL Information

Montre le mauvais numéro de version curl, et

HTTP2

Noté comme

no

.

Toute suggestion sur la façon de faire PHP augmenter ce sera

fort

RÉSOLUTION!
Invité:

Blanche

Confirmation de:

Pour tous ceux qui y réfléchissent à l'avenir, à la fin, j'ai trouvé un moyen de le faire. J'ai essentiellement créé ma propre image Docker, basé sur
https://github.com/docker-library/php
, Qui a téléchargé la nouvelle version cURL Avant la compilation.

Ceci est disponible sur
https://hub.docker.com/r/marklocker/php7-http2/
(au moins pour PHP 7, Travailler à travers FPM).

Pour répondre aux questions, connectez-vous ou registre