Laravel Homestead的安装和使用

article/2025/9/15 14:29:23

Homestead

  • Homestead是什么
  • 安装
    • 1.打开Git Bash 进入E:\HashiCorp\Vagrant
    • 2.1 添加Homestead Vagrant Box 到 Vagrant (无本地box文件)
    • 2.2 homestead Vagrant Box 到 Vagrant (有本地box文件,本地文件位置在D:/vagrant/homestead-virtualbox-0.6.0.box)
    • 2.3 查看是否添加成功
      • 返回内容如下说明添加成功
    • 3.克隆 Laravel Homestead 仓库到 e:/HashiCorp/Vagrant/homestead
    • 4.#执行 init.sh(生成Homestead.yaml文件)
    • 8.#配置Homestead.yaml 文件 (我的文件在D:/vagrant/homestead目录下);
    • 8.配置windows hosts 文件
    • 补充操作
    • 补充内容(vagrant常用命令)
    • homestead配置局域网访问

Homestead是什么

Laravel Homestead 是一个官方预封装的 Vagrant box,它为你提供了一个完美的开发环境,而无需在本地机器安装 PHP 、Web 服务器和其他服务器软件。不用担心会搞乱你的操作系统!Vagrant boxes 是一次性的。如果出现问题,你可以在几分钟内销毁并创建 Box!
Homestead 可以运行在任何 Windows,Mac,或 Linux 系统,它包括了 Nginx web 服务器, PHP 7.2,PHP 7.1,PHP 7.0,PHP 5.6, MySQL,PostgreSQL,Redis,Memcached, Node,以及开发 Laravel 应用程序所需要的东西。
Vagrant是构建在 虚拟化技术之上 的 虚拟机运行环境管理工具

安装

安装vagrant和 VirtualBox、git版本控制器、composer

  • Virtualbox https://www.virtualbox.org/
  • Vagrant https://www.vagrantup.com/downloads.html/

Git、Virtualbox和Vagrant 安装此处就省略了,把文件下载下来,就一直下一步就好,vagrant安装完成会提示重启电脑,重启就好。
下面我们开始进入正题吧,安装Homestead

#安装Homestead
我的Vagrant 安装目录选择在 E:\HashiCorp\Vagrant

1.打开Git Bash 进入E:\HashiCorp\Vagrant

cd E:
cd HashiCorp/Vagrant

2.1 添加Homestead Vagrant Box 到 Vagrant (无本地box文件)

vagrant box add laravel/homestead

1.如果报错请使用新版本,就去官网下载最新版本就好
2.如果vagrant 命令未找到,需重启git bash 或重启电脑 (你之前安装过vagrant)

2.2 homestead Vagrant Box 到 Vagrant (有本地box文件,本地文件位置在D:/vagrant/homestead-virtualbox-0.6.0.box)

vagrant box add laravel/homestead 

2.3 查看是否添加成功

vagrant box list

返回内容如下说明添加成功

在这里插入图片描述

3.克隆 Laravel Homestead 仓库到 e:/HashiCorp/Vagrant/homestead

git clone https://github.com/laravel/homestead.git
cd homestead
git checkout release

4.#执行 init.sh(生成Homestead.yaml文件)

sh init.sh

8.#配置Homestead.yaml 文件 (我的文件在D:/vagrant/homestead目录下);

Homestead配置
配置文件:根目录下的Homestead.yaml

配置共享文件夹

folders:- map: E:/phpStudy/PHPTutorial/WWWto: /home/vagrant/code

配置Nginx站点

sites:- map: homestead.testto: /home/vagrant/code/smartwms/public
ip: "192.168.56.56"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:- ~/.ssh/id_rsa
folders:- map: ~/Codeto: /home/vagrant/Code
sites:- map: homestead.appto: /home/vagrant/Code/Laravel/public
databases:- homestead
variables:- key: APP_ENVvalue: local

修改为

---
ip: "192.168.56.56" #本机访问
#ip: "192.168.0.187"#局域网访问
memory: 2048
cpus: 2
provider: virtualboxauthorize: ~/.ssh/id_rsa.pubkeys:- ~/.ssh/id_rsafolders:- map: E:/phpStudy/PHPTutorial/WWWto: /home/vagrant/codesites:- map: smartwms.topto: /home/vagrant/code/smartwms/publicphp: "7.3" #设定php版本- map: gio.topto: /home/vagrant/code/gio/gio/publicphp: "7.3"type: thinkphp # 设定支持的框架 默认是laravel- map: toolbox.topto: /home/vagrant/code/toolbox_server/publicphp: "7.3"type: thinkphpdatabases:- homesteadfeatures:- mysql: true- mariadb: false- postgresql: false- ohmyzsh: false- webdriver: falseservices:- enabled:- "mysql"
#    - disabled:
#        - "postgresql@11-main"#ports:
#    - send: 33060 # MySQL/MariaDB
#      to: 3306
#    - send: 4040
#      to: 4040
#    - send: 54320 # PostgreSQL
#      to: 5432
#    - send: 8025 # Mailhog
#      to: 8025
#    - send: 9600
#      to: 9600
#    - send: 27017
#      to: 27017

1.正常情况下,我们配置Vagrantfile,我们配置homestead是因为作者给我们配置好了,我们只需要填充参数即可
2.ip: 虚拟机的ip地址,如果window下,本地电脑也是192.168.10.* ip段,这个时候,再填写192.168.10.10就会报错,解决方案:192.168.11.10即可解决
3.authorize、keys分别代表私钥和公钥,如果使用homestead必须配置秘钥,公钥
4.folders:共享文件目录,map代表window环境,to:同步homestead文件位置
5.sites:NGINX配置文件,map代表域名,to:指向目录域名指向文件位置

8.配置windows hosts 文件

打开 C:/Windows/System32/drivers/etc/host 添加
192.168.56.56 smartwms.top


## 9.启动虚拟机
```bash
cd e:/HashiCorp/Vagrant/homestead
vagrant up

最后测试一下 访问 http://smartwms.top成功 即安装完成

补充操作

进入虚拟机

vagrant ssh 

退出虚拟机

exit

补充内容(vagrant常用命令)

命令 解释

vagrant box list 查看目前已有的box
vagrant box add 新增加一个box
vagrant box remove 删除指定box
vagrant init 初始化配置vagrantfile
vagrant up 启动虚拟机
vagrant ssh ssh登录虚拟机
vagrant suspend 挂起虚拟机
vagrant reload 重启虚拟机
vagrant halt 关闭虚拟机
vagrant status 查看虚拟机状态
vagrant destroy 删除虚拟机
vagrant reload --provision 重启虚拟机并重新加载配置

可参考 https://www.cnblogs.com/wjcms/p/13226008.html

homestead配置局域网访问

修改E:\HashiCorp\Vagrant\homestead\scripts文件homestead.rb

# Configure A Private Network IPif settings['ip'] != 'autonetwork'config.vm.network :private_network, ip: settings['ip'] ||= '192.168.56.56'elseconfig.vm.network :private_network, ip: '0.0.0.0', auto_network: trueend

改为

# Configure A Private Network IPif settings['ip'] != 'autonetwork'config.vm.network :public_network, ip: settings['ip'] ||= '192.168.56.56'elseconfig.vm.network :private_network, ip: '0.0.0.0', auto_network: trueend

homestead.yaml的ip更改为本机同网段未使用的ip

我本机为192.168.0.116 设置的 192.168.0.187
同步修改host文件 局域网需要访问的别的电脑也需要配置相同的host
在这里插入图片描述


http://chatgpt.dhexx.cn/article/yiETqTq7.shtml

相关文章

Homestead搭建 - Windows

系统要求 Windows 7 及以上。 步骤简略 接下来让我们按照这几个步骤来完成整个 Laravel 开发环境的安装及配置: 安装 VirtualBox安装 Vagrant导入 Homestead Box 虚拟机盒子安装 Git安装 Homestead 管理脚本配置 Homestead.yaml 文件启动 Homestead 虚拟机 安装 …

m1搭建homestead环境,m1安装homestead环境

本文目录 一、环境要求1、mac M12、macOS Big Sur 11.3.1以上3、Parallels Desktop 16 for Mac4、Vagrant 二、安装homestead以及虚拟机1、安装homestead2、安装arm架构vagrant box 三、效果测试四、踩坑记录五、vagrant常见命令六、虚拟机安装laravel,本地测试 一、…

Homestead安装

安装软件 安装vargrant;安装Virtualbox安装git导入box 下载homestead.box,点击下载。 新建了一个文件夹名为homestead,然后将下好的box重命名为homestead.box放入,然后在此文件夹内运行如下命令(这里是按照一些普通的教程来添加,这时候挖了一个坑,后面填上)。 vagran…

vagrant Homestead 环境搭建

一. 搭建步骤 1、vagrant plugin install vagrant-vbguest 安装vagrant 先下载vagrant再执行指令 2、git config --global http.schannelCheckRevoke false 执行vagrant box add laravel/homestead 报错 解决: 手动下载 https://vagrantcloud.com/laravel/boxes/…

开发环境搭建homestead - windows

系统要求 Windows7 及以上。 步骤简略 安装 VirtualBox安装 vagrant导入 Homestead Box 虚拟机盒子安装 Git安装 Homestead 管理脚本配置 Homestead.yaml 文件启动 Homestead 虚拟机开启 NFS 挂载模式 安装 VirtualBox VirtualBox 是 Oracle 公司的开源虚拟机软件。Virtua…

Homestead 发布

以太坊开发开始于2013年12月份,当时两个开发者和一个大学辍学生(译者注:即Vitalik)决定集思广益,一起开发这一项目。后来与我们群志趣相投的人也加入了。我们的第一个概念验证(Proof of Cocept 1&#xff0…

TCP的三次握手和四次挥手(超详解)

TCP的三次握手和四次挥手 TCP的连接建立 TCP的连接建立的过程叫做握手,握手需要在客户和服务器之间交换三个TCP报文段。下图画出了三报文握手建立TCP连接的过程。 假定最初主机A运行的是TCP客户端程序,而B运行的是TCP服务端程序。最初两端的TCP进程都处…

简述TCP三次握手和四次挥手过程

TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.第一次握手:建立连接时,客户端发送syn包(synj)到服务器,并进入SYN_SEND状态,等待服务器确认; SYN:同步序列编号(Synchronize Sequence Numbers)第二次握手&a…

TCP三次握手和四次挥手解析

三次握手(建立连接) (1)序号:seq序号,占32位,用来标识从TCP客户端向目的端发送的字节流,发起方发送数据时对此进行标记。 (2)确认序号:ack序号&a…

简述TCP的三次握手和四次挥手

TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂&am…

简单理解TCP的三次握手和四次挥手

本文用简洁的语言教你理解TCP的三次握手和四次挥手,匆忙写的,审美可能有待提升。 本文适合入门,基础不高的同学观看,以便有一个大概的了解。深入的同学还请高抬贵手。 还有请记住,是传输层中TCP的东西,不…

tcp三次握手和四次挥手的过程

TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号 并交换 TCP窗口…

TCP的三次握手和四次挥手

一、TCP介绍 TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,在发送数据前,通信双方必须在彼此间建立一条连接。所谓的“连接”,其实是客户端和服务端保存的一份关于对方的信息,如ip地址、端口号等。TCP可以看成是一种…

TCP三次握手和四次挥手的全过程

三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,希望大家能带着如下问题进行阅读,收获会更大: 请画出三次握手和四次挥手的示意图为什么连接的时候是三次握手?什么是半连接队列?ISN(Initial Sequence Number)是…

TCP的三次握手和四次挥手总结

TCP的三次握手和四次挥手总结 本文经过借鉴书籍资料、他人博客总结出的知识点,欢迎提问 序列号 seq:占 4 个字节,用来标记数据段的顺序,TCP 把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生…

三次握手和四次挥手知识总结(超详细)

前言: 最近学习了计算机网络的知识,看了很多的视频,并参考了很多资料,写下了这将近4500字的与“三次握手和四次挥手”相关的知识,希望能帮助到各位小伙伴儿以及加深自己印象,方便以后复习用 如果有什么写的…

简述TCP的三次握手和四次挥手过程

①TCP是一种精致的,可靠的字节流协议。 ②在TCP编程中,三路握手一般由客户端(Client)调用Connent函数发起。 ③TCP3次握手后数据收发通道即打开(即建立了连接)。 ④简述三路握手过程: 图 .TCP三次握手 (1)第一次握手:C…

通俗易懂理解TCP协议三次握手和四次挥手及其常见问题

TCP协议三次握手和四次挥手 三次握手如果建立连接只需要2次握手,可能会出现的情况 四次挥手为什么建立连接是三次握手,关闭连接确是四次挥手呢?TIME_WAIT状态有什么作用,为什么主动关闭方没有直接进入CLOSED状态释放资源&#xff…

TCP的三次握手和四次挥手详解

TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接,与之相反的,采用四次挥手来断开连接: TCP标志位有6种标示,即:SYN(建立联机) 、 ACK(确认) 、 PSH(传送) 、…

TCP三次握手和四次挥手详解(面试常见问题)

大概两个月前,一位朋友在面试360集团时,在面试过程中被问及TCP三次握手和四次挥手的相关知识,他当时只知道大概,但当时面试官问他TCP三次握手过程中发送的数字是多少,他一下子就懵住了,因为这也是他第一次参…