davidalger / docker-images-php Goto Github PK
View Code? Open in Web Editor NEWPHP and PHP-FPM images for Docker based on EL 8
Home Page: https://hub.docker.com/r/davidalger/php
License: MIT License
PHP and PHP-FPM images for Docker based on EL 8
Home Page: https://hub.docker.com/r/davidalger/php
License: MIT License
Kindly please create version for PHP 8.2. Is that possible?
Thank you in advance!
These PHP images will shortly be rebuilt based on the Remi RPMs (https://rpms.remirepo.net/) rather than on those published via the IUS Project (https://ius.io/). This is being done with longevity of these images in mind, and to better enable speedy updates and following the PHP release cycle.
As part of the move to Remi, the IUS based images available here will be deprecated effective immediately. The IUS based images have been pushed to Docker Hub with an additional -ius
suffix and will remain available for at least the next 90 days, after which they may be removed and will no longer be available (old Dockerfiles could still be used by you to build IUS based images as-needed should you not be able to migrate to using the Remi RPMs).
Images were moved via the following process:
$ tags=$(curl -s https://registry.hub.docker.com/v1/repositories/davidalger/php/tags | jq -r '.[].name' | grep -E '[0-9]\.[0-9]')
$ for tag in $tags; do echo $tag; done
5.5
5.5-fpm
5.5-fpm-loaders
5.5-loaders
5.6
5.6-fpm
5.6-fpm-loaders
5.6-loaders
7.0
7.0-fpm
7.0-fpm-loaders
7.0-loaders
7.1
7.1-fpm
7.1-fpm-loaders
7.1-loaders
7.2
7.2-fpm
7.2-fpm-loaders
7.2-loaders
7.3
7.3-fpm
7.3-fpm-loaders
7.3-loaders
7.4
7.4-fpm
7.4-fpm-loaders
7.4-loaders
-ius
suffix applied, then push the new tag to docker hub:$ for tag in $tags; do docker pull davidalger/php:$tag; done
$ for tag in $tags; do docker image tag davidalger/php:$tag davidalger/php:$tag-ius; done
$ for tag in $tags; do docker push davidalger/php:$tag-ius; done
$ curl -s https://registry.hub.docker.com/v1/repositories/davidalger/php/tags | jq -r '.[].name' | grep ius\$ | sort -nr
7.4-loaders-ius
7.4-ius
7.4-fpm-loaders-ius
7.4-fpm-ius
7.3-loaders-ius
7.3-ius
7.3-fpm-loaders-ius
7.3-fpm-ius
7.2-loaders-ius
7.2-ius
7.2-fpm-loaders-ius
7.2-fpm-ius
7.1-loaders-ius
7.1-ius
7.1-fpm-loaders-ius
7.1-fpm-ius
7.0-loaders-ius
7.0-ius
7.0-fpm-loaders-ius
7.0-fpm-ius
5.6-loaders-ius
5.6-ius
5.6-fpm-loaders-ius
5.6-fpm-ius
5.5-loaders-ius
5.5-ius
5.5-fpm-loaders-ius
5.5-fpm-ius
First of all: thank you for all your great work on Warden! I love the solution you've built :).
I'm running into some problems caused by missing cURL constants:
(shell created from docker run -it davidalger/php:7.4 /bin/bash
)
CURLHEADER_SEPARATE
was introduced in cURL version 7.37.0.
CURLINFO_SCHEME
was introduced in cURL version 7.52.0.
CentOS 7.9 has cURL version 7.29.0 (dated from 2013).
I'm not sure if I'm in a very rare use case, but do you see any possibilities?
Willing to collaborate!
All linux-based images (PHP, Varnish, etc.) currently use centos:8
. The main issue that I came across with this is that, there are no ARM builds for PHP. Remi doesn't have ARM builder, so there's no ETA on this either. This is currently the biggest blocker that I've come across while trying to make Warden multi-platform (Intel & Apple Silicon).
My current approach: https://github.com/drpayyne/docker-php. I have rebuilt all the four images (CLI & FPM, both with & without loaders) as multi-platform Docker images. BUT. I had to switch to Fedora. Since Remi doesn't provide PHP for ARM, and neither does CentOS itself (CentOS provides some extensions, but not all). I had to switch to Fedora, which provides PHP and all its extensions for both platforms.
My question: can we either switch to Fedora... or... Debian?
Our two main dependencies in this repo are - Docker and PHP. Why not use the official PHP Docker image? Its homepage lists all the available tags and guides.
These official PHP Docker images use Debian underneath so here's my question. Is it feasible to switch to these images? For supporting both platforms, for quick updates, for official support, etc.
I currently have made Warden work with PHP 7.4 on my Apple Silicon, but 7.3 is looking very tough to make work, and I've no idea about 8.0 yet - USING Fedora. On the other hand, switching to these official PHP Docker images seem like the right way forward.
Am I blatantly missing anything? What are your thoughts? I'm actively trying to make Warden work as smooth as possible for both platforms, so any feedback is appreciated. Thank you!
It looks like the maintainers of centos:8 images have some urgent updates causing epel mirror checksums to fail without the latest.
docker run -it --rm davidalger/php:7.4-fpm dnf update
This will fail at the moment with
Error: Failed to download metadata for repo 'epel': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Looks like there is a fix in latest 8 tag
docker run -it --rm centos:8 dnf update
If you could manually trigger your git workflow CI to get the update, much appreciated.
Can you please add composer 2.2 as another version and also add env param which will defifne which version shall be used as default?
Currently in my scripts running in this container, first thing I have to run is:
rm -f /usr/bin/composer
curl -sS https://getcomposer.org/installer | php -- --2.2 --install-dir=/usr/bin --filename=composer
It would be easier if it would respect env variable (which can default to 1 for backwards compatibility).
FYI I am using this image with bitbucket pipelines so I am limited with what I can do with it.
Appreciated!
Hello, first of all, thank you for making your work available to us.
Im not very knowledgeable here.
Im trying to install ext-ssh2 extension. Ultimately, i would like to create my own image with the extension installed.
Currently in my container i noticed pecl is not installed. So I decided to install php-pear.
when i install it like so sudo yum install php-pear
it installs php-pear noarch 1:1.9.4-21.el7
once installed, when i run pecl
this error shows up.
PHP Parse error: syntax error, unexpected 'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on line 91
I cant get past this error.
Please how can I install this extension ?
And if i wanted to create an image/dockerfile from yours, how can I have ext-ssh2 installed ?
Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.