Windows10にLaravel 8.x/Dockerの環境を作成するにあたっての備忘録です。
Laravel 8.x 公式ドキュメントのインストール手順には、
Docker上にLaravel環境を構築する方法が紹介されています。
その手順に従い、Windows10にLaravel環境を作成するにあたっての備忘録。
Docker Desktopをインストール
ダイアログに従って普通にインストール。
Docker Desktop
https://www.docker.com/products/docker-desktop
Windows Subsystem for Linux 2(WSL2)インストール
以下URLの「Manual Installation Steps」を参考に。
https://docs.microsoft.com/en-us/windows/wsl/install-win10
PowerShellを管理者権限で起動
Windows SubsystemforLinuxオプション機能の有効化
WindowsでLinuxサブシステムを使えるようにするための設定。
PowerShell上で次のコマンドを実行し、マシンを再起動する。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
仮想マシン機能の有効化
仮想マシン利用を有効にするための設定。
PowerShellで次のコマンドを実行し、マシンを再起動。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
WSL2 Linuxカーネルアップデートパッケージをダウンロード
リンク先の「WSL2 Linux kernel update package for x64 machines」から
ダウンロードしてインストール。
https://docs.microsoft.com/en-us/windows/wsl/install-win10
WSL2をデフォルトバージョンとして設定
これからインストールするLinuxサブシステムで、WSL2をデフォルトとして使用するための設定。
PowerShell上で次のコマンドを実行。
wsl --set-default-version 2
Linuxサブシステムのインストールと設定
サブシステムのインストール
Windows上で動作するLinuxサブシステムをインストールする。
色々あるが、今回は深く考えずにKali-linuxをインストールした。
MicrosoftStoreから、
各Linuxサブシステムをダウンロード&インストール。
各サブシステムへのリンクは下記リンクの「Step 6 - Install your Linux distribution of choice」参照。
https://docs.microsoft.com/en-us/windows/wsl/install-win10
サブシステムのユーザー、パスワードを設定
サブシステムをインストールし、初回起動すると
ユーザー名とパスワードの設定を求められるので、設定する。
以上でWindows上にLinuxサブシステムがセットアップされる。
PowerShell上から次のコマンドを打ってみて、エラーなどが出なければ正しくセットアップされているはず。
Linuxサブシステムに割り当てられているWSLの確認
wsl --list --verbose
Docker Desktopの設定
DockerがWSL2をベースに動き、またインストールしたLinuxサブシステムを認識するための設定。
Docker Desktopを起動し、メニューバーの「Settings」(歯車のアイコン)をクリック。
左メニューの「General」が選択された状態で、
「Use the WSL 2 based engine」が有効になっていることを確認。
左メニューの「Resources」→「WSL INTEGRATION」で、
インストールしたLinuxサブシステムにチェックを入れ(自分の場合はkaki-linuxです)、
Apply & RestartをクリックしてDockerを再起動。
PowerShellでLinuxサブシステムを起動する。
自分の場合はkali-linuxの起動コマンド「kali」。
PS C:\Users\azumak> kali
起動したLinuxサブシステム上で、「docker -v」などと打ってみて
Dockerを認識しているか確認する。
Laravelインストール
Linuxサブシステム上で、以下コマンドを実行してLaravel最新版をインストールする。
sudo curl -s https://laravel.build/<プロジェクト名>| bash
ここで、「Docker is not running」と表示されて先に進まないようであれば、
Dockerが起動していないか、LinuxサブシステムがDockerを認識していない・・・かも。
自分の場合はDockerとkali-linuxの関連付けができていなかった。
うまくいけば、指定したフォルダにLaravel最新版がインストールされる。
Laravel Sail起動
インストールが成功すると指定したフォルダにLaravelプロジェクトが作成されるので、
プロジェクトフォルダに移動してSailコマンドを実行する。
cd <プロジェクト名>
./vendor/bin/sail up
初回はとても時間がかかる。
build成功のログが出たらhttp://localhostにアクセスし、
LaravelのTOページが表示されれば成功!
参考
https://readouble.com/laravel/8.x/ja/installation.html
https://docs.microsoft.com/en-us/windows/wsl/install-win10