👻

[PHP]composer2系になってデプロイが落ちるようになった人はバージョン指定してインストールしよう

2020/10/26に公開

概要

2020 年 10 月 24 日、composer 2.0 へのメジャーアップデートが実施されました。

弊社のサービスがこれを原因として Dockerfile 内の composer 周りのコマンドが落ちてしまうようになったので、暫定対処としてバージョン指定しました。

やり方(推奨)

--1オプションを指定します。上記のメジャーアップデート告知の記事に書かれています。

Should you encounter issues, you can go back at any time by using composer self-update --1. Hopefully that will make everyone feel comfortable to experiment with the new release.

Dockerfile
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --1 --filename=composer

後述の version 指定の方法を当初は採用していたのですが、--1のほうが単純明快なので良いと思います。

こちらのツイートで情報をもらいました!

https://twitter.com/smdhogehoge/status/1320578917686624256?s=20

やり方(非推奨)

--versionオプションを指定します。(Docs)

Dockerfile
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --version=1.10.16 --filename=composer

2 系の直前にリリースされているのは1.10.16です。

こちらで手元の環境ではデプロイが成功するようになりました。

補足

以下の Qiita にあるように、必須アイテムの一つであるPrestissimoともお別れできるみたいです。

https://qiita.com/lighthawk/items/dc9ba08206b02ffca8a0

Discussion