meowの覚え書き

write to think, create to understand

Laradockでの環境構築時のエラー対処メモ

f:id:meow_memow:20200908221034j:plain

Laravelの勉強を、下記の本で取り組み始めました。

環境構築は、HomesteadではなくLaradockの方を選びましたが、私もご多分に漏れず手順通りに動かしてもエラーが出てしまい、最初のララベルの画面を拝むまでに苦戦しました。
私が躓いた箇所を念の為メモしておきます。


スポンサードリンク

ERROR: for nginx Cannot start service nginx: driver failed programming external connectivity on endpoint laradock_nginx_1 (<ハッシュ値>): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use

コンテナを立ち上げる時($ docker-compose up -d nginx mysql workspace phpmyadmin)に遭遇したエラーです。 メッセージの通りですが、自分のコンピュータですでにポート80番が使用されています。 laladock/.env内の下記の部分を、空いているポート(10000番など)に変えた後、解消されます。

### NGINX #################################################

NGINX_HOST_HTTP_PORT=80

UnexpectedValueException There is no existing directory at "/var/www/storage/logs" and it could not be created: Permission denied

laravelのエンドポイントにwebブラウザでアクセスしたとき、このようなメッセージとともにデバッグ画面が出ました。 原因は、立ち上げているworkspaceコンテナに対し、ルートユーザでプロジェクトを作成してしまったためでした。 一旦、プロジェクトを消した後、laradockユーザでworkspaceコンテナへアクセス($ docker-compose exec --userlaradock workspace bash )して、プロジェクトを作ると解消されます。