你可能熟悉 Laravel 开发环境中的 VirtualBox with Homestead。但是,这种传统的托管虚拟机在访问您的真实硬件资源之前会带来额外的开销。
Laravel Sail 是一个轻量级的命令行界面,用于与 Laravel 的默认 Docker 开发环境进行交互。
Sail 为使用 PHP、MySQL 和 Redis 构建 Laravel 应用程序提供了一个很好的起点,而无需之前的 Docker 经验。
来源: Laravel 文档
在本教程中,我将带你使用 WSL 2 在 Windows 上启动你全新的 Laravel 项目。WSL 代表Windows Subsystem for Linux,它允许开发人员直接在 Windows 上运行 Linux 环境,而无需任何“真正的”托管 VM。WSL 2 是一项重大改进,它提供了 WSL 1 的优势以及更好的文件 IO 性能(快 20 倍)。它不像传统的虚拟机,启动速度慢、资源开销大、完全隔离。
让我们在 Windows 机器上打开 WSL 2!
🐧 安装 WSL 2
🛠️**简化安装(Windows 11 / Windows 10 版本 2004 或更高版本)
**以管理员权限打开命令窗口并运行
wsl --install
,重启后即可使用 WSL。
如果该命令不适用于您的 Windows 10 版本,请尝试以下手动安装。
🛠️手动安装
(Windows 10 Build 18362 或更高版本, 包括家庭版)
1.启用WSL
以管理员权限打开命令窗口,然后运行
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
2.启用虚拟机功能
WSL 2 仍然需要虚拟化功能。使用管理员权限打开命令窗口,然后运行
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
3.下载Linux内核更新包
下载适用于 x64 机器的 WSL2 Linux 内核更新包并安装。
然后,重新启动计算机。
4. 将 WSL 2 设置为默认版本
wsl --set-default-version 2
5. 安装 Ubuntu(或您选择的 Linux 发行版)
I) 打开Microsoft Store,然后搜索并选择Ubuntu。
II ) 从发行版页面中,选择“获取”,然后选择“安装”
III) 准备就绪后单击“运行”
IV ) 为您的 Ubuntu 创建用户名和密码
6. wsl --list --verbose
用于验证您的安装
🐳 安装 Docker
1. 下载
Docker Desktop 4.11.0 (83626)或更高版本。
2. 安装
按照安装向导安装 Docker Desktop。如果您的 WSL 2 配置正确,它应该会在安装过程中提示您启用 WSL 2。
在 Docker 菜单中,选择Settings > General:确保 WSL 2 已启用。
3. 配置 WSL 集成
确保打开正确的 Linux 发行版。
⛵让我们扬帆起航
启动Windows 终端并键入wsl
这是关键……您可能会注意到路径是您安装的 Windows 用户目录。
在 Microsoft WSL 官方文档中,它说明了比较。WSL 2 架构在几个方面优于 WSL 1,但跨 OS 文件系统的性能除外。
我们建议您不要跨操作系统处理您的文件,除非您有特定的理由这样做。
例如,在存储 WSL 项目文件时:
✔️ 使用 Linux 文件系统根目录:
\wsl$\Ubuntu\home<user name>\Project
❌ 不是 Windows 文件系统根目录:
C:\Users<user name>\Project
我们可以通过使用转到您的 Linux 主目录cd ~
test-project
让我们使用以下命令创建一个新的 Laravel 项目:
curl -s "laravel.build/test-projec…" | bash
然后等待安装
你可能想知道如何访问你的 Laravel 项目文件?您可以通过网络共享访问\wsl$
\\wsl$\Ubuntu\home\ *<用户名>* \test-project
现在我们可以进入目录cd test-project
并开始sail了!
./vendor/bin/sail up
第一次运行sail up
需要一些时间来下载 docker 镜像和构建你的容器,但下一次运行会非常快。
如果您遇到任何问题,您的防病毒软件可能是罪魁祸首。请排除路径“ C:\ProgramData\DockerDesktop\vm-data
”。
容器启动后,您可以访问http://localhost访问您全新的 Laravel 项目。
📦选择你的 Sail 堆栈
默认堆栈包括mysql
、redis
、meilisearch
、mailhog
和selenium
。可用服务包括mysql
、pgsql
、mariadb
、redis
、memcached
、meilisearch
、selenium
和mailhog
。
with
您可以使用查询选择您最喜欢的堆栈:
curl -s "https://laravel.build/example-app?with=mysql,redis" | bash
它将docker-compose.yml
相应地配置您的文件。
后台启动 Sail
./vendor/bin/sail up -d
别名
不要输入长路径名,而是配置一个允许您sail
直接调用的 Bash 别名
alias sail='bash vendor/bin/sail'
您可以创建一个别名,将别名永久添加到您的.bashrc
文件中\
您可以创建一个别名,将别名永久添加到您的.bashrc
文件中
,运行nano ~/.bashrc
然后在底部添加,然后**alias sail='bash vendor/bin/sail'
ctrl+X保存
. ~/.bashrc
💾 开始你的编码
✍️ Visual Studio 代码
确保您安装了插件Remote — WSL 扩展。
进入项目
cd ~/test-project/
#然后运行
code .
您应该能够看到 VS Code 启动并显示您的项目文件夹
💡提示:您可以
artisan
使用以下命令调用命令sail artisan <command>
快乐编码!💪💪💪
💡 提示:使用
localhost
默认用户名:sail
和password:连接您的 SQL 管理软件。