Bringing together other issues/PRs requesting base image updates: https://github.com/docker-library/php/issues/428, https://github.com/docker-library/php/issues/456, https://github.com/docker-library/php/issues/457, https://github.com/docker-library/php/issues/468, https://github.com/docker-library/php/pull/482, https://github.com/docker-library/php/issues/501.
Should fix theses once we make a PR: https://github.com/docker-library/php/issues/495, https://github.com/docker-library/php/issues/198
We do not want to maintain our PHP images over multiple distro releases in the long term. To update the base image without immediately breaking users like https://github.com/docker-library/golang/pull/131, we'll have to release images based on all four distributions (Alpine 3.4, Alpine 3.6, Debian Jessie, and Debian Stretch) over a few months and then end of life the versions based on the older Linux distributions (Alpine 3.4 and Debian Jessie).
Why not keep all distribution versions longer (Alpine 3.4, 3.6, Jessie, and Stretch)?
We are thinking something like this:
php:7.1-alpine3.4 and php:7.1-alpine3.6php:7.1-jessie and php:7.1-stretchphp:7.1-alpine would still be alpine 3.4)php:7.1-alpine will continue to contain Alpine 3.4 until that date and instead encourage users to switch to php:7.1-alpine3.4 to stick to a specific Linux DistroI think @tianon and I could tackle something like this in the next week or two. Any suggestions or comments?
Did some unexpected problems arise?
Do you plan to release alpine 3.7 version for other 7.x?
Where can I find the end of life dates of Alpine Linux? I didn't found any information on their website.
Any informations about the release date of the update for alpine 3.6 or 3.7 for PHP 7.0 and 7.1 is coming?
It's unfortunate that -alpine doesn't point to the latest stable Alpine release. It means you're forcing users who want the latest stable to specify the Alpine version, and then it'll come back to bite them once it's EOL (or even before, when they're lagging behind being stuck with the old Alpine version for no good reason). For the common user who don't care about the Alpine version, this is bad news.
A better alternative would be for -alpine to point to the latest stable Alpine release, and maintain each Alpine release for 3 months as you wish. So for those who require a specific Alpine version, they can stay on it until it's EOL. This would be more consistent with how the PHP releases are handled, e.g. if you choose to stay on php:7.1 instead of just php (php:7 makes less sense due to how PHP introduces breaking changes between minor versions).
@teohhanhui yes, with the hindsight of having done it less than ideally initially (due to not knowing what would matter longer-term), it's clear to see that -alpine should've pointed to the latest Alpine release -- that's exactly the backwards compatibility problem this issue is discussing :wink:
Essentially, we need to establish that users who care about their Dockerfiles working the same long-term need to pin to a specific Alpine release, and we need to ensure that those tags are readily available. Once we've done both of those, we can easily update the plain -alpine tag to point to whatever alpine:latest does.
Most helpful comment
Any informations about the release date of the update for alpine 3.6 or 3.7 for PHP 7.0 and 7.1 is coming?