Docker-composeで以前に作られたPHP環境をbuildしようとしたらエラーがでたのでメモ
2553 ワード
起きたエラー
普通にdocker-compose build
して
ずらーーーーーーっと処理してくれてうまくいたかなあと思ったら
こんなエラーがでました。
terminal.
echo 'sendmail_path = "/usr/sbin/ssmtp -t"'
php -r 'copy('"'"'https://getcomposer.org/installer'"'"', '"'"'composer-setup.php'"'"');'
php -r 'if (hash_file('"'"'sha384'"'"', '"'"'composer-setup.php'"'"') === '"'"'48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5'"'"') { echo '"'"'Installer verified'"'"'; } else { echo '"'"'Installer corrupt'"'"'; unlink('"'"'composer-setup.php'"'"'); } echo PHP_EOL;'
Installer corrupt
php composer-setup.php '--install-dir=/usr/local/bin' '--filename=composer'
Could not open input file: composer-setup.php
ERROR: Service 'hoge' failed to build:
内容としては、
Docker-compose.yml
に書いているhogeというserviceのbuildがうまくいかなかったよ
composer-setup.phpっていうファイルがないからだよ
と言っているようなのですが、
その直前に、Installer corrupt
とでています。
どうやらこれがでていると、composerのバージョンが更新されたことによるエラーの可能性が高いらしいのです。
特に今回はhash_file
の直後に表示されているので、ハッシュ値が更新された可能性があります。
解決
ということで最新版を確認
https://getcomposer.org/download/
dockerfileにこちらの情報を書いていたので、最新のハッシュ値に更新して
# composer install
&& php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" \
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& php -r "unlink('composer-setup.php');" \
\
&& apk del .build-deps \
&& apk del .extension-build-deps
再build
# docker-compose build
これでうまくいきました◎
composerの更新は確認しておいたほうがよさぽよです。
Author And Source
この問題について(Docker-composeで以前に作られたPHP環境をbuildしようとしたらエラーがでたのでメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/marty_ojiya/items/9bb42787a278ee299cc8著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .