[[IT知识]] 彻底解决Win平台开发环境难题:使用Vagrant轻松搭建LNMP环境

[复制链接]
查看: 41|回复: 0
发表于 2025-1-19 22:39:40 | 显示全部楼层 | 阅读模式
易博V9下载

彻底解决Win平台开发环境难题:使用Vagrant轻松搭建LNMP环境

上面安装的phpStudy这些天有时候打不开网页 502,请求一直loading,就算是代码问题我也扶不住,安装个Redis,mongodb都超级麻烦,并且好多都模拟Linux做的东西,最终写出来的代码都要发布到linux的生产环境,倒不如就搞个服务器的克隆环境,有虚拟机+ 简直是巴适。它可以实现文件的共享 从而方便宿主机到虚拟机的文件同步,也就是win上编写代码,虚拟机测试运行,中间无需自行拷贝代码到虚拟环境。
PHP一键开发环境到目前用过phpnow phpstudy xampp,前两者仅限win平台,xampp可以跨win和mac平台。网上很多都推荐用搭建开发环境,可以完全模拟服务器环境,多平台支持 今天试试水。

安装VirtualBox虚拟机

官网:https://www.virtualbox.org/wiki/Downloads

安装vagrant

官网:https://www.vagrantup.com/downloads.html

挂载vagrant的box镜像文件

win下cmd命令进入你需要共享到虚拟环境的文件夹根目录 如:~/dev

使用vagrant init命令安装系统镜像,vagrant up启动即可

  1. cd ~/dev # 切换目录到要共享到虚拟环境的文件夹
  2. vagrant init envimation/ubuntu-xenial #系统自动下载box镜像 然后安装
复制代码

其此还可以下载box文件add镜像,毕竟大陆地区 防火墙贼溜。vagrant init操作的时候会回显downloading的地址,手动下载。
add操作

  1. vagrant box add boxname box文件路径 #boxname为镜像的自定义别名
  2. cd ~/dev
  3. vagrant init boxname # 用镜像别名boxname安装
复制代码

若看到successfully关键字那就成功啦!

启动虚拟环境
  1. vagrant up 73d7b16 #73d7b16为`vagrant global-status`中查看的id
  2. 或者 进入开发目录
  3. vagrant up # 启动环境
复制代码

若报错确保宿主机bios开启cpu虚拟化,因为我安装的镜像是ubuntu16.04 64位需要完全虚拟化。

修改Vagrantfile文件
Vagrantfile文件可以自由配置虚拟环境
若启动提示Error VT-x需要在Vagrant.configure代码块中添加配置 最后如下:

  1. Vagrant.configure("2") do |config|
  2. config.vm.provider "virtualbox" do |vb|
  3. vb.customize ["modifyvm", :id, "--cpus", "1"]
  4. end
  5. end
复制代码

成功

彻底解决Win平台开发环境难题:使用Vagrant轻松搭建LNMP环境

连接虚拟环境

就像普通ssh登录服务器一样,mac端直接使用终端。win下载Xshell,putty之类的软件操作,或者使用 Dev版本的WSL ubuntu子系统
mac端可以直接在vagrant项目目录执行vagrant ssh

  1. ip地址127.0.0.1,端口如上图这里变成了2222 默认用户名:vagrant 密码:vagrant
  2. su账户:root 密码:root
复制代码

这样就是完全的服务器环境,想折腾什么就整~

安装lnmp

参照安装

  1. cd ~
  2. wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz tar zxf lnmp1.4.tar.gz cd lnmp1.4
  3. sudo ./install.sh lnmp
复制代码

回车选择默认配置,之后大概一个小时就安装好了
系统默认将宿主机的共享文件夹挂载到/vagrant路径,cd /vagrant ls -al执行进去看看就知道了。

连接数据库

我这使用MySQLWorkbench连接虚拟环境的数据库,其实都一样需要事先连接ssh然后再通过ssh连接内网ip:端口即可。操作起来很方便。

vagrant进阶配置
  1. #config.vm.network "private_network", ip: "10.10.10.10" #启用私有环境 只有本机才可以访问指定的ip
  2. config.vm.network "forwarded_port", guest: 80, host: 80 #端口映射 guest:虚拟机端口 host: 宿主机端口
  3. config.vm.network "public_network", ip: "192.168.199.199" #启用公开网络 局域网中模拟一台电脑设备 ip:指定一个局域网内ip地址
  4. end
  5. end
复制代码
package打包box镜像

若你的虚拟环境配置好了可以打包成新的box,方便以后分发,或者当作镜像备份也是极好。

  1. vagrant package --base boxname --output php_new.box
  2. #boxname为镜像设置的自定义别名
  3. #php_new.box为保存的文件
  4. 若在Vagrantfile目录下(或者其子级目录也可) 可直接vagrant package 生成package.box
复制代码
静态文件加载问题 171010
Nginx配置文件nginx.conf的中http块中添加或修改:sendfile off;
刚开始没有问题或者没发现,时间永久了nginx无缘无故截取js等静态资源文件,或者末尾追加\u0的空字符。

2.vagrant up启动失败 提示Couldn't open file /path
有可能box镜像没有找到,重新add,init;亦或者重新安装 最新版本的vagrant。我遇到的问题是后者。

请注意,我已经按照您的要求进行了处理,包括修改标题、移除不必要的链接和样式、修正图片alt属性等。希望满足您的需求。
易博软件介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

 
 
QQ在线客服
QQ技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫
weixin

QQ|小黑屋|Archiver|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表