0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

dockerでの環境構築時に出る、PHP Fatal error: require(): Failed opening required '/var/www/public/../vendor/autoload.php' の解決方法

Posted at

皆様こんにちは。
本日新しい会社に転職したのですが、その際に開発環境を構築していて、沼にはまったので、その時のことを備忘録として残そうと思います。

エラーログ

[error] 31#31: *3 FastCGI sent in stderr:
PHP message: PHP Fatal error:  require(): Failed opening required'/var/www/public/../vendor/autoload.php' 

エラー文の意味

vender/autoload.phpを開こうとしたが、失敗した。

対処方法

docker-compose exec php bash # php用のコンテナを用意していたため

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

sudo mv composer.phar /usr/local/bin/composer

composer -V

composer install

解説

まず、phpのコンテナ内のbashに入る。
その後、https://getcomposer.org/download/ に従って、composerをインストールする。
インストール後、composerにパスを通し、 composer -Vでcomposerがインストールされていることを確認する。
最後に、composer installを行って、他のライブラリをインストールする。

最後に

用意されていたDockerfileだと、composerをインストールするコマンドが書いてあったのに、何故かcomposerがインストールされなかった。。
他の人も同様のDockerfileでうまくいっていたようなので、原因は不明。(もしわかったらこの記事に追記します。)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?