win10 系统下安装 wsl + Laravel 开发环境 Ubuntu16.04LTS + WIN10
win10 系统下安装 wsl laravel开发环境 ubuntu16.04LTS + WIN10
最近社区有一篇文章 打开新大门,使用 wsl 代替虚拟机的可行性方案 ,介绍了怎么使用 win10 子系统配置 laravel 开发环境。本人瞎捣鼓了一下,发现并不是一帆风顺的就安装好了。
问题一: 当进行到,使用脚本搭建环境 这一步的时候会出现 一直处于‘初始化软件源’ 。
我去 github 项目看了一下,发现出现这个问题的同学还真不少。不过里面也没有给过明确的解决方案。经过多次尝试,发现可能 win10 系统的权限有关,这个问题在很多软件的安装过程中多次遇到,我建议在win10上安装运行软件最好采用 ‘以管理员身份运行’ 的方式启动。这样会避免很多问题。 还有一点,因为我的网络还算比较不错,所以 更换 Linux 子系统的软件源并更新 这一步我并没后替换,还是采用的系统自带的软件源。
问题二: 在 创建测试站点 这一步 输入正确的项目名称还是提示不合法的输入。
这一问题让我很是费解,甚至看过相关脚本源码之后还是一头雾水。最终解决的方法是,用管理员权限启动子系统,然后在 root 用户下执行命令就没有提示错误了。个人认为其实是权限问题,只是脚本没有通过提示都是 项目名称包含非法字符 有些误导。
问题三:所有步骤都做完之后,项目还是无法启动。
因为我途中关闭过子系统。发现原来重启后 php ,redis,mysql 等服务都不会开机自动启动的,需要手动启动才可以。
问题四:每次开机启动子系统报错。
这个问题是因为子系统所需要的服务没有启动,打开任务管理器 重启 LxssManager 服务就可以了。
设置 host 的时候直接设置 127.0.0.1 就行了,子系统的 ip 就是本机的 ip
最后来正式启动后,访问项目的速度还是不错的!对比 homestead 来说的好处是不用装虚拟机和下载box 启动的速度也比较快!
发现还有很多同学不能正常安装成功,这里贴出自己的安装步骤 ,大概时长10分钟。没有像其他同学说的要几天时间。我没有完全按照 [@circle](https://learnku.com/users/20822) 的教程 打开新大门,使用 wsl 代替虚拟机的可行性方案,减少了一些不太重要的步骤。
-
安装 wsl 安装好 以管理员身份运行 启动 wsl
-
设置 root 密码
sudo passwd root // 为 root 用户设置密码
su root // 切换 root 用户
-
安装环境 开发
wget -qO- https://raw.githubusercontent.com/summerblue/laravel-ubuntu-init/master/download.sh - | bash
-
安装完毕就可以创建项目了,现在项目里面是没有东西的,我只是用这里自动生成的配置文件(偷个小懒),我直接用的 本地 d 盘下的项目的名字和域名,后面直接创建一个软链接就行了
./laravel-ubuntu-init/16.04/nginx_add_site.sh
-
创建本地项目到 wsl 的软连接
cd /var/www //切换到 wsl 项目下
rm -rf your_project_name //删除前面创建项目生成的空目录,后面用软连接会冲突
ln -s /mnt/d/www/your_project_name /var/www/your_project_name
-
启动 相关服务
service mysql start
service nginx start
service redis-server start
sudo service php7.2-fpm start
-
现在已经可以访问你的本地项目了,不过会非常慢。修改一下 nginx 的配置 vi /etc/nginx/nginx.conf, 添加一下代码
http {
...
fastcgi_buffering off;
...
}
-
重启 nginx 现在就可以顺畅的开发了。
service nginx restart
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: