【发布时间】:2019-02-18 19:28:44
【问题描述】:
我需要更新 laravel/homestead?这是一个流浪者盒子。我将它用于我的开发环境。
我记得它是一个 shell 命令,但我不记得该命令,我找不到它。请帮忙
【问题讨论】:
我需要更新 laravel/homestead?这是一个流浪者盒子。我将它用于我的开发环境。
我记得它是一个 shell 命令,但我不记得该命令,我找不到它。请帮忙
【问题讨论】:
使用下面的命令
homestead update
如果这不起作用
homestead box update
如果这也不起作用
此命令将告诉您当前登录用户系统上所有活动 Vagrant 环境的状态。
vagrant global-status
vagrant box update "laravel/homestead"
我希望我现在清楚了!
【讨论】:
vagrant global-status 添加了解释,请参阅我编辑的答案
请按照这个 url 来指导你更新 laravel/homestead
基本步骤是cd进入你的homestead目录并运行vagrant box update它将下载最新版本
【讨论】:
$ vagrant box update 为我工作。链接虽然不愉快。它建议在不需要时备份数据库。更新后我的数据库完好无损,我什至不想读完。
如果您在安装时使用了默认设置,则需要
1) 转到您的 vagrant 文件夹
$ cd ~/Homestead/
2) 运行vagrant box update 命令
$ vagrant box update "homestead-7"
在 Laravel 5.6/5.7 上测试
【讨论】:
首先更新你的盒子:
vagrant box update
而且,正如这里记录的那样:
https://laravel.com/docs/master/homestead#updating-homestead
您应该首先销毁机器并重新创建它:
vagrant destroy
vagrant up
刚刚测试过,它对我有用。 (从宅基地更新:'8.2.0' 到 '9.0.0')
在销毁机器之前不要忘记备份现有的数据库数据。
【讨论】:
这是我最近(2020 年 4 月)提出的将我的 vagrant box 从 9.2.x 升级到 9.5.x 的序列
如果虚拟机没有先运行:
vagrant up
然后进入虚拟机:
vagrant ssh
并备份数据库:
mysqldump -u homestead --all-databases > homestead-backup.sql
将生成的文件复制到主机(仅当上述命令未在映射文件夹中运行)
关闭ssh连接:
exit
然后运行:
vagrant box update
vagrant destroy
vagrant box prune
对所有问题回答“是”。那么
git fetch
git pull origin release
再次启动虚拟机:
vagrant up
一旦启动(这次需要更长的时间)进入虚拟机:
vagrant ssh
并恢复数据库(如果备份文件不在映射文件夹中,则从主机复制备份文件)
mysql -u homestead < homestead-backup.sql
【讨论】:
mysql -u -p homestead < homestead-backup.sql 密码:秘密
首先,检查可用的宅基地版本:
https://github.com/laravel/homestead/releases
要检查您的宅基地和流浪者版本,请使用以下命令:
vagrant version
我已安装版本:2.2.10,mac 的最后一个版本是 2.2.14
git branch -v
在我的例子中,我有这样的输出:HEAD detached at v11.4.0
那么,如何更新 Vagrant 和 Homestead?
首先,请务必备份数据库!
https://laravel.com/docs/8.x/homestead#database-backups
在我的情况下,自动备份不起作用,我第一次做 vagrant destroy 我丢失了数据库,所以我建议像这样手动备份:
vagrant ssh
mysqldump -u homestead -p --all-databases > homestead-20210214.sql
然后在销毁之前从 Vagrant 机器中复制文件: 来自 ~/Homestead
scp -P 2222 vagrant@127.0.0.1:/home/vagrant/homestead-20210214.sql .
然后从 Homestead 目录:
vagrant destroy
git fetch
查看您的宅基地的版本:
vagrant box list
就我而言,我有:laravel/homestead (virtualbox, 10.1.1)
您可以在这里查看 Homestead 的最新稳定版本:
https://github.com/laravel/homestead/releases.
就我而言,是 Homestead 12。
但实际上您要安装的是 laravel/homestead Vagrant box 的最新稳定版本。
您可以在此处查看最新版本。
https://app.vagrantup.com/laravel/boxes/homestead.
在我的情况下是 v11.0.0
然后因为在我的情况下,最新的 Homestead 是 v12.0.0 我做了:
git checkout v12.0.0
vagrant box update
bash init.sh
vagrant up
你就完成了。
然后你就可以恢复数据库了。
如果我跑怎么办
vagrant box list
我明白了:laravel/homestead (virtualbox, 11.0.0)
也可以在这里查看官方文档。 https://laravel.com/docs/8.x/homestead#updating-homestead
【讨论】: