プログラミングいちねんせい

プログラミング歴ゼロの初心者がもがくサイトです

勉強のためのDocker環境作り(仮)

Nginx, PHP(Laravel), MySQL, phpMyAdmin

ディレクトリ構成は下図です

ディレクトリ構成

それぞれのコンテナでDockerfileを利用しています。adminerからphpMyAdminに変更したのはadminerの軽さを体験して満足したことと記事の多さでphpMyAdminが圧勝したからです。ここはまた変更する可能性があります。

Laravelの表示は全く問題なかったです。前回の記事にあるように権限を変更することで壁には当たりませんでした。早速、勉強を開始したいところですが、ここにNext.jsも導入したいと思います。せっかく勉強を再開するなら新しい技術に触れて楽しみたいです。

細かいエラーに対応しているうちにDocker, Git, vsCodeに慣れてきたので一石二鳥ですね javacurry.hatenablog.jp

DockerでLaravel環境を作るのは難しい

他人の記事でDockerでLaravel環境を作るという内容の日付が2021年とわりと新しかったので同じ手順で試したところ記事の途中から違う結果が出始め失敗。他の記事でも失敗。環境を作るのにかなり手間がかかりました。

ルートディレクト

よく見かける記事の内容としてdefault.confのルートディレクトリをroot /var/www/に変更してくださいという旨のものがあります。しかし、結果的に私はそれでは上手く表示されずにroot /var/www/html/publicで上手くいきました。publicディレクトリを指定しないと動かなかったので、これは必要だと思います。

権限

これについては言及している記事とそうでない記事に分かれますが、file not found や真っ白の画面になる場合はstoragechmod -R 755 storageで権限を与えます。file not foundや真っ白問題はこれで解決しました。

まとめ

他人の記事をコピペすると動かないことが多いです。上に書いた解決策も結局は利用するimageのバージョンによっても変わってくると思います。何度もエラーに遭遇して少しずつ理解できるように精進するしかないですね。