前提
- PHP 8.2.10
- Laravel8
- Docker環境下で動作
- 環境構築についてはこちらの記事を参考
事象
Dockerコンテナ外では CSS がブラウザに反映されている
$ php artisan serve
$ npm run dev
ただ Docker コンテナ内になると CSS がブラウザに反映されなくなる
$ docker-compose up -d
[+] Running 4/4
✔ Container laravelapp-mysql-1 Started
✔ Container laravelapp-node-1 Started
✔ Container laravelapp-php-1 Started
✔ Container laravelapp-nginx-1 Started
$ docker-compose exec node npm run dev
原因
Nginx に MIMEタイプを設定していなかったため
コンパイルによって CSS ファイルは作成されていたが、正しく CSS を読み込めていなかった
解消法
nginx.conf
の http に include /etc/nginx/mime.types;
を追記
...
http {
include /etc/nginx/mime.types;
server {
listen 8000;
...
nginx.conf
を編集したのでnginxを再起動
$ docker-compose restart nginx