Laradock環境でLaravelのキャシュをクリアする方法

こんにちは!
個人開発をしている南です!

今回は、Laravelで開発をしている時にViewファイルやController部分を変更したのに、反映されないといった問題に対処する方法を紹介します。

僕は開発環境はLaradock(ララドック)を使って開発しているのですが、Laravelのキャッシュがきつくて変更が反映されないといった問題が発生しました。

そこで、色々調べたりしてなんやかん2,3時間くらい潰してしまったので、自分用のメモとして残しておきます。

ちなみに、LaradockとはDockerのLaravel専用の開発環境になります。

気になる方は、下記に公式サイトを載せておきますので、見てみてください。

Laradock公式サイト(英語)

Laravelのキャッシュを消す方法

Laravelのキャッシュは以外とキツくて、開発をしている時は少しイライラするかもしれません。

ただ、キャッシュがあることでページの表示速度などが早くなるので、ないとそれはそれで困るというなかなか困りものです。。。

そんなLaravelにはちゃんとキャッシュのクリアコマンドがあるので、そちらを試してみましょう。

具体的には、次のようなキャッシュクリアコマンドがあります。

・applicationキャッシュクリアコマンド
・routeキャッシュクリアコマンド
・configキャッシュクリアコマンド
・viewキャッシュクリアコマンド

applicationキャッシュクリアコマンドについて

applicationキャッシュクリアコマンドは、Laravelのアプリで動いている基本的なキャッシュを削除するコマンドです。

実際のコマンドは次のとおり。

routeキャッシュクリアコマンドについて

routeキャッシュクリアコマンドは、Laravelルート部分のキャッシュをクリアしてくれるコマンドです。

実際のコマンドは次のとおり。

configキャッシュクリアコマンドについて

configキャッシュクリアコマンドは、Laravelコンフィグ部分のキャッシュをクリアしてくれるコマンドです。

実際のコマンドは次のとおり。

viewキャッシュクリアコマンドについて

configキャッシュクリアコマンドは、Laravelビュー部分(bladeファイルなど)のキャッシュをクリアしてくれるコマンドです。

実際のコマンドは次のとおり。

コマンドを実行する場所について

ちなみに、紹介してきたコマンドを実行する場合は、Dockerのワークスペースにログインした状態で、Laravelアプリケーションのトップ部分で実行するようにします。

Dockerのワークスペースにログインするには、Laradockのディレクトリ内で下記のコマンドを実行します。

まずは、「cd」コマンドなどでlaradockのディレクトリまで移動します。

「ls」コマンドなどを打つと、下記のように色々と表示されます。


Laradockまで移動したら下記のコマンドを実行しましょう。

うまく実行できると、ターミナルの画面が下記のように表示されます。


もし、何かしらエラーが出たりする場合はワークスペースが使えない場合があるので、その場合はワークスペースをインストールするようにしましょう。

あとは、「cd」コマンドを使って開発しているLaravelのところまで移動して、「ls」コマンドを入力します。

今まで紹介してきたコマンドはここの場所で入力するようにしましょう。

SSHできない場合

自分のローカルで開発している場合は、SSHできない場合もあると思います。

その場合は、下記のコードをroutes/web.phpの中に書き込んで/clear-cacheドメインにアクセスしてキャッシュを削除する方法もあります。

キャッシュをクリアしても反映されない場合

今まで紹介してきたコマンドを打ち込んで、ブラウザを「cmd+r」などでリロードしてもキャッシュが消えない場合は、Dockerを止めてもう一度立ち上げましょう。

手順としては、今まで紹介してきたコマンドをもう一度打ち込んで、キャッシュを削除。

その後に、Dockerを止めて再起動します。

Dockerを止めるコマンド

今動かしているDockerを止める場合は、ターミナルでローカルの「Laradock」に移動して下記のコマンドを入力します。

もし、ワークスペース内にいる場合は下記のコマンドを入力するとワークスペースから出ることができます。


Dockerをもう一度立ち上げるコマンド

Dockerを止めることができたら、今度はDockerをもう一度立ち上げます。

Dockerをもう一度立ち上るには、次のコマンドを打ちます。

Laradockを動かしている場合は、下記のコマンドで立ち上がると思います。


これで、もう一度変更したブラウザにアクセスしてみてください。

おそらく、変更した内容が反映されているかと思います。

まとめ

今回は、Laradock環境でLaravelのキャッシュをクリアする方法を紹介しました。

今回紹介した内容が同じように悩む、あなたのお役に立てれば幸いです。

この記事を書いた人

南 健太郎

1991年生まれ。都内でエンジニアをしています。
このブログでは、個人開発や日々の技術に関する情報などを発信していきます。