繁体   English   中英

在 docker 上安装旧版本的作曲家

[英]Install older version of composer on docker

我正在尝试在 docker 上运行我的 laravel 应用程序。它是一个旧应用程序,我正在尝试重新浮出水面,它是在 php 7.1 上构建的

在本地,它工作正常。

在 Docker 上,我使用了以下配置:

FROM php:7.1-fpm-alpine

RUN docker-php-ext-install pdo pdo_mysql sockets
RUN curl -sS https://getcomposer.org/installer​ | php -- \
     --install-dir=/usr/local/bin --filename=composer

COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

WORKDIR /app
COPY . .
RUN composer install

它不允许我安装作曲家并给出以下错误:

[stage-0 7/7] RUN composer install: #0 0.221 Composer 2.3.0 放弃了对 PHP <7.2.5 的支持并且您正在运行 7.1.33,请升级 PHP 或通过“composer self-update - -2.2"。 中止。

我试着做RUN composer self-update --2.2而不是,但它是同样的错误。

谁能告诉我如何 go 在 docker 上安装这个特定版本的作曲家。

谢谢

所有 composer 版本都可以通过其GitHub 存储库访问,包括composer.phar二进制存档文件。 不要从 getcomposer.org 安装最新版本,只需使用适用于您的 PHP 版本的版本即可。

composer.phar 2.2.9 的 composer.phar 可以在这里找到: https://github.com/composer/composer/releases/tag/2.2.9

Composer 安装程序允许选择版本:

  1. 获取安装程序

    php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

    或使用 cURL 获取安装程序。

  2. 安装版本

    php composer-setup.php --2.2

参见https://getcomposer.org/download/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM