章: 第5章: より本格的な環境
対象OS: Windows 専用
「Windowsだと本番と違う」—— その問題を根本から解消する
多くのサーバーはLinuxで動いています。WindowsのXAMPPはWindowsネイティブで動くため、パスの区切り文字や改行コード、パーミッションの扱いが本番環境と微妙に異なります。チームにMacユーザーが混在しているとさらに差が生じやすくなります。
WSL2(Windows Subsystem for Linux 2)を使えば、Windows上でLinux環境を動かせます。 DockerもLinuxの上で動くため、WSL2はDocker学習の前段階としても有効です。
WSL2とは
WSL2はWindows 10/11に組み込まれたLinux互換レイヤーです。仮想マシンとは異なり、Linuxカーネルが直接動作するため、パフォーマンスが高くWindowsとのファイル共有も自然にできます。
| 項目 | 内容 |
| 必要なOS | Windows 10 バージョン2004以降、またはWindows 11 |
| 推奨ディストリビューション | Ubuntu 22.04 LTS |
| インストール方法 | PowerShellからコマンド1つ |
WSL2のインストール
PowerShellを管理者として実行して、次のコマンドを入力します:
wsl --install
このコマンドで:
- WSL2機能が有効化される
- Ubuntu(最新LTS)が自動的にインストールされる
完了後、PCを再起動します。
再起動後、Ubuntuが起動してユーザー名とパスワードの設定を求められます。任意のユーザー名とパスワードを入力してください(このパスワードはUbuntu内でのsudoコマンドに使います)。
確認コマンド:
`powershell
wsl –list –verbose
`
STATEがRunningまたはStoppedと表示されれば正常です。
Ubuntu上にPHPをインストールする
WSL2のUbuntuターミナルを開いて、以下を実行します:
# パッケージリストを更新
sudo apt update && sudo apt upgrade -y
# PHPと必要なモジュールをインストール
sudo apt install -y php php-cli php-mbstring php-xml php-curl php-mysql php-zip
# バージョン確認
php -v
PHP 8.x.x と表示されれば完了です。
Composerのインストール
# 必要なパッケージ
sudo apt install -y curl
# Composerをインストール
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
# 確認
composer --version
PHPビルトインサーバーで動作確認
# プロジェクトフォルダを作成
mkdir ~/myproject && cd ~/myproject
# テストファイルを作成
echo '<?php echo "Hello from WSL2!"; ?>' > index.php
# ビルトインサーバーを起動
php -S localhost:8000
Windowsのブラウザで http://localhost:8000/ にアクセスすると、WSL2上のPHPが応答します。
チェックポイント: WSL2内のlocalhostはWindowsのブラウザから直接アクセスできます。ファイアウォールの設定なしに
http://localhostでつながります。
VS CodeとWSL2を連携させる
VS CodeにはWSL2専用の拡張機能があります。
1. VS Codeで拡張機能「WSL」(ID: ms-vscode-remote.remote-wsl)をインストール
2. WSL2のターミナルでプロジェクトフォルダに移動して:
`bash
code .
`
3. VS CodeがWSL2モードで起動し、Linux側のファイルをWindowsのUIで編集できる
この状態で拡張機能(PHP Intelephense、PHP Debugなど)はWSL2側にインストールされ、Linuxのパスで動作します。
ファイルシステムの注意点
WSL2にはファイルシステムの境界があります。
| パス | 説明 |
~/ または /home/ユーザー名/ |
Linux側のファイルシステム(高速・推奨) |
/mnt/c/ |
WindowsのCドライブへのマウント(低速) |
プロジェクトファイルはLinux側(~/)に置くのが原則です。 /mnt/c/ 以下に置くとファイルアクセスが遅くなります。
まとめ & 次のステップ
- WSL2はWindows上でLinuxを動かす機能で、
wsl --installで導入できる - Ubuntu上にPHPとComposerをインストールすれば、Macとほぼ同じ操作感になる
- VS Codeの「WSL」拡張でWindows UIのままLinux側のファイルを編集できる
- ファイルはLinux側(
~/)に置くことでパフォーマンスが維持される
次回はWindowsとMac共通で使える「DockerでPHP環境をつくる」を解説します。チーム開発に耐えうる再現性の高い環境をコードで定義する方法です。