はじめに

 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

おわりに

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

.htaccess (2) @False (3) @True (5) ByRef (3) ByVal (3) CGI (6) cron (2) CSS (8) Excel (3) False (3) Goto (3) HTML (4) httpd.conf (2) if (3) Java (5) Java Servlet (3) Linux (3) List (3) Lotus Script (35) Lotus 式言語 (28) ls (2) MariaDB (4) Notes/Domino (12) null (5) Option Compare (3) Path (3) PHP (5) Python (7) Spring Boot (3) True (3) UTF-8 (4) VBScript (29) Windows (9) インストール (6) セットアップ (2) ダウンロード (2) ノーコード (4) ファイル一覧 (2) ローコード (3) 変換 (3) 変数 (3) 比較方法 (7) 環境変数 (4) 配列 (4) 開発環境 (4)