在 Alpine Linux 中安装特定版本的 PHP

时间:2021-05-17 06:52:08

标签: php linux alpine

我正在尝试在 Alpine Linux 上安装 PHP v8.0.2,但收到以下消息:

apk add php8=8.0.2
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
ERROR: unable to select packages:
  php8-8.0.6-r0:
    breaks: world[php8=8.0.2]

有什么办法可以让它安装吗?
如果我只执行 apk add php8,它会添加版本 8.0.6,但该版本存在一个问题,会破坏我的网站。

任何帮助将不胜感激

3 个答案:

答案 0 :(得分:1)

通过 apk 是不可能的,因为 Alpine Linux 团队没有在他们当前的存储库中保留“旧版本”(如 here (gitlab.alpinelinux.org)here (stschindler.medium.com) 所述)

因此,如果您的网站无法使用 php 8.0.6 或 7.4.19 运行,您必须按照 Richard Wan 建议的方式从源代码构建它。

答案 1 :(得分:0)

也许你可以从源代码安装 php,因为很难找到特定版本的 php 并使用 apt-get 或 yum install 安装它。这是php 8.0.2的源代码: source code of php 8.0.2

下面的文章将给你一些如何做到这一点的说明。它是php 7安装,但方法有点相同。这是文章l: https://blacksaildivision.com/php-install-from-source

答案 2 :(得分:0)

PHP official Dockerhub 页面包含各种风格的官方 PHP 版本的版本标签。

对于 PHP 8.0.2 Alpine 映像,您可以使用 php:8.0.2-alpine3.12 作为基础映像,而不是 alpine:3.13

有关其他基于 PHP 8.0.2 Alpine 3.12 的图像,请参阅:
https://hub.docker.com/_/php?tab=tags&page=1&ordering=last_updated&name=8.0.2