thinkingreed-inc / oss-calendar

OSS Calendarは企業で使うことを想定したオープンソースのカレンダーアプリです。
https://oss-calendar.com/
30 stars 12 forks source link

Dockerビルド時にComposerのインストールでエラーが発生する #4

Closed Remicck closed 4 years ago

Remicck commented 4 years ago

不具合概要

Composerのインストール時にハッシュ値のチェック部分でエラーが発生する。

該当ページ

docker-compose build時

発生環境

再現手順

  1. 2020/01/07時点 docker-compose build

本来の挙動

正常にインストール可能

修正しないとどう困るか

原因

docker/php-fpm/Dockerfile内の以下の記述

RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
RUN php composer-setup.php
RUN php -r "unlink('composer-setup.php');"
RUN mv composer.phar /usr/local/bin/composer

修正案

COPY --from=composer /usr/bin/composer /usr/bin/composer
Remicck commented 4 years ago

参考:Docker に Composer をインストールするベストプラクティス(と解説) - Qiita

Docker 17.05が必要になるようですが、2017-05-04リリースなので問題ないかと。

Remicck commented 4 years ago

誤って別IDを振ってfixしてしまいました。 f7b321130406b28eec7e6e4a6699ee82240fd843 こちらで修正済み