[PHP]Laravelの開発環境をWindowsで整える

はじめに

 WindowsパソコンにLaravelの開発環境を整えました。およそ次のとおりになります。

  1. WSL(WindowsでLinuxを使えるようにするもの)
  2. WSLにUbuntuをインストール
  3. WindowsにDocker Desktopをインストール
  4. UbuntuにLaravelをインストール

WSL

 [コントロールパネル]>[プログラム]>[プログラムと機能]>[Windowsの機能の有効化または無効化]を開いて、次の項目にチェックを入れます。

  • Linux 用 Windows サブシステム
  • 仮想マシン プラットフォーム

 これをPowerShellで設定するには次のようにします。PowerShellは[管理者として実行]します。

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

WindowsでWSL2を使って「完全なLinux」環境を作ろう!

 ここまで設定したら、一旦Windowsを再起動します。

Ubuntu

 パソコンから目を離しても、Windowsがスリープしないように、[システム]>[電源とバッテリー]で設定しておきます。

 それでは、Ubuntuをインストールしましょう。PowerShellを[管理者として実行]し、次のようにします。

wsl --install

 Ubuntuがインストールされると、新しいユーザーの名前とパスワードの登録がおこなわれます。
ユーザー名とパスワードは何でもよいですが、ブランクにできません。このパスワードは頻繁に使いますので、しっかりメモしておきましょう。
 成功すると、[スタート]>[すべてのアプリ]に[Ubuntu]が登録されます。

WSL を使用して Windows に Linux をインストールする

 次に、Ubuntuを更新しましょう。[スタート]>[すべてのアプリ]から[Ubuntu]を開いて、次のようにします。

sudo apt update && sudo apt upgrade -y
exit

 ここでWindowsを再起動します。

 もういちど、Ubuntuを開いて、次のようにします。

sudo do-release-upgrade
exit

 途中で[y]や[ENTER]の入力を求められます。

 更に、WindowsとUbuntuの改行コードの違いを吸収するために次のようにします。

sudo apt-get install -y dos2unix
find . -type f -print0 | xargs -0 dos2unix

Docker Desktop

 次のサイトからWindows用のDocker Desktopをインストールします。これはWindowsのアプリです。

ドッカーデスクトップ

 インストールが正常に終わると[Installation succeeded]と表示されます。そのあとDocker Desktopを開くとチュートリアルが始まりますが、とりあえずスキップしましょう。

ララベルとドッカー

Laravel

 Ubuntuを開いて、次のようにします。
[○○]部分には任意のディレクトリ名を入れます。例えば[example-app]とすることができます。

curl -s "https://laravel.build/○○?php=81" | bash
cd ○○ && ./vendor/bin/sail up

 これで、開発環境は整いました。

【Docker】Laravel Sailのインストールと使い方を確認

Laravelを開く

 ここからは、コンピューターを開いてLaravelにアクセスするたびにおこないます。
まずはUbuntuを開いて、次のようにします。

cd ○○ && ./vendor/bin/sail up -d

 [○○]部分には、先に curl -s “https://laravel.build/○○?php=81” | bash したときの○○を入れます。
 次に、ブラウザを開いて http://localhost/ にアクセスします。無事にLaravelの画面が表示されたでしょうか。

 なお、Laravelを終わらせるには、次のようにします。

./vendor/bin/sail down

おわりに

 開発環境の細かいところは、参加するチームによって色々と差異があるとおもいます。基本的なところが押さえられていたなら いいな..とおもいます。

タイトルとURLをコピーしました