基于 vagrant搭建移动端的开发环境
# 后端开发环境Homestead
启动 Homestead 之前,确保 VirtualBox 、Vagrant、Git 软件己安装。
## 安装 laravel/homestead
vagrant box add laravel/homestead
如果这个命令失败了,请确保你安装的是最新版的 Vagrant(可能被墙)。
1. 请下载 virtual.box自定义安装:
2. vagrant box add laravel/homestead ~/目录/virtualbox.box
被墙后后,请去Vagrant 官网下载:
https://vagrantcloud.com/laravel/boxes/homestead/versions/9.3.0/providers/virtualbox.box
如果执行自定义下载的文件安装,报如下错:
check your Homestead.yaml file, the path to your private key does not exist.
解决办法:
1 ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
2
3 eval "$(ssh-agent -s)"
4
5 ssh-add -K ~/.ssh/id_rsa
cd ~
git clone https://github.com/laravel/homestead.git ~/Homestead
这样 Homestead Box 就可以作为你的所有 Laravel 项目的主机
切到最新的稳定版本
cd ~/Homestead
# 或者期望的发行版本...
git checkout v9.4.0
在 Homestead 目录中使用 bash init.sh 命令来创建 Homestead.yaml 配置文件。 Homestead.yaml 文件将被放在 Homestead 目录中
# Mac / Linux... bash init.sh
## 配置 Homestead
打开 ~/Homestead/Homestead.yaml
# 配置共享文件夹 (你电脑上的目录映射到虚拟机上)
folders:
- map: ~/website/bbs
to: /home/vagrant/Code/bbs # 配置 Nginx 站点
sites:
- map: bbs.test
to: /home/vagrant/code/bbs/public
## 启动 Vagrant 盒子
配置好 Homestead.yaml 文件后,在 Homestead 目录下运行 vagrant up 命令,如果你是通过先下载 Homestead Vagrant 盒子再手动添加的方式安装的话,此时先不要执行这个命令,而是需要进入 ~/.vagrant.d/boxes/laravel-VAGRANTSLASH-homestead 目录(以 MacOS 为例,Windows 对应的路径应该是 C:/Users/User/.vagrant.d/boxes/laravel-VAGRANTSLASH-homestead,其中 User 对应你的用户名),添加一个 metadata_url 文件,并初始化文件内容如下(如果已有则忽略):
https://vagrantcloud.com/laravel/homestead
接下来,将该目录下手动添加到 Vagrant 盒子目录 0 重命名此次安装盒子版本号 9.4.0(可执行命令 vagrant box list 可得laravel/homestead virtualbox版本号),再回到 Homestead 目录运行 vagrant up 命令。Vagrant 将会启动虚拟机并自动配置共享文件夹以及 Nginx 站点,初次启动需要花费一点时间进行初始化。
当然为了关闭检测自动更新,配置 Homestead/script/homestead.rb 文件。
// 新增
config.vm.box_check_update = false
## 多版本 PHP
Homestead 6 在同一个虚拟机上引入了对多个 PHP 版本的支持。你可以在你的 Homestead.yaml 文件中指定要用于给定站点的 PHP 版本
sites:
- map: homestead.test
to: /home/vagrant/code/xxx/public
php: "7.1"
## PHP版本管理工具
homestead 中自带了版本管理工具 update-alternatives
#进入 ssh
vagrant ssh #查看所有 php 版本和当前版本
update-alternatives --display php #列出当前 php 所有版本和编号,输入编号,切换到执行的版本
update-alternatives --config php
## Homestead常用命令
> 将在Homestead目录下进行
1. 更新虚拟机上的 Nginx 配置(当更改了 sites 选项)
vagrant reload --provision`
# 或者
vagrant provision && vagrant reload
2. 删除虚拟机
vagrant destroy --force
3. 启动
vagrant up
4. 进入系统
vagrant ssh
基于 vagrant搭建移动端的开发环境的更多相关文章
- React-native搭建移动端ios开发环境实践笔记
开发环境的搭建,按照 https://reactnative.cn/docs/getting-started/ 里面的步骤一步一步来,这里记录下需要注意的几点:1.初始化react-native项目的 ...
- Vite ❤ Electron——基于Vite搭建Electron+Vue3的开发环境【一】
背景 目前社区两大Vue+Electron的脚手架:electron-vue和vue-cli-plugin-electron-builder, 都有这样那样的问题,且都还不支持Vue3,然而Vue3已 ...
- 基于全志H3芯片的ARM开发环境搭建
基于全志H3芯片的ARM开发环境搭建 最近买了个友善之臂的NanoPi M1板子,又在网上申请了个NanoPi NEO板子,这两个都是基于全志H3芯片的Crotex-A7四核ARM开发板,两个板子可以 ...
- vagrant+docker搭建consul集群开发环境
HashiCorp 公司推出的Consul是一款分布式高可用服务治理与服务配置的工具.关于其配置与使用可以参考这篇文章 consul 简介与配置说明. 一般,我们会在多台主机上安装并启动 consul ...
- 如何基于Jupyter notebook搭建Spark集群开发环境
摘要:本文介绍如何基于Jupyter notebook搭建Spark集群开发环境. 本文分享自华为云社区<基于Jupyter Notebook 搭建Spark集群开发环境>,作者:apr鹏 ...
- 搭建 AngularJS+Ionic+Cordova 开发环境并运行一个demo
目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...
- Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试
Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...
- 极其简单的搭建eclipse的android开发环境
这篇博客是关于如何搭建eclipse的android开发环境, 与网上的其他博客不同,我的方法比他们简单的多,所 以推荐给大家. 搭建eclipse的android开发环境步骤: 1.配置JDK(Ja ...
- 基于Eclipse的Go语言可视化开发环境
http://jingyan.baidu.com/article/d7130635032e2f13fdf475b8.html 基于Eclipse的Go语言可视化开发环境 | 浏览:2924 | 更新: ...
随机推荐
- GCD HDU - 1695 容斥原理(复杂度低的版本)
题意: 让你从区间[a,b]里面找一个数x,在区间[c,d]里面找一个数y.题目上已经设定a=b=1了.问你能找到多少对GCD(x,y)=k.x=5,y=7和y=5,x=7是同一对 题解: 弄了半天才 ...
- Codeforces Round #636div3 D. Constant Palindrome Sum (划分区间,差分)
题意:给你一个长度为偶数n的数组,每次可以将一个元素修改为不大于k的值,要求每个a[i]+a[n-i+1]都相等,求最少操作多少次 题解:假设每一对的和都为sum,小的记为mn,大的记为mx; ...
- 开源RPA软件试用
优点 缺点 其它 Robot Framework 可视化界面 运行环境搭建复杂,依赖较多 操作复杂 倾向于自动化测试 TagUI 浏览器支持好 官方文档详细 命令行操作 非浏览器程序支持一般 ...
- 使用开源量子编程框架ProjectQ打印编译后的量子线路与绘制线路图
技术背景 在量子计算领域,基于量子芯片的算法设计(或简称为量子算法)是基于量子线路来设计的,类似于传统计算中使用的与门和非门之类的逻辑门.因此研究一个量子线路输入后的编译(可以简化为数量更少的量子门组 ...
- 桶排序 && leetcode 41
桶排序 对于0-1000 ,用1001个桶 简单版 或者用10个桶0-9,先按各位装桶,然后依(桶)次放回,然后再按十位放桶,放回,然后百位. 也就是基数排序 https://www.cnblogs ...
- ARMv7-A 架构下的MMU
ARM架构中MMU的作用主要就是将CPU发出的虚拟地址转换成为物理地址,从实现内核和用户程序和用户程序之间的虚拟地址空间隔离.MMU的主要组成为两部分,其一是内部的TLBs缓存:还有就是转换表装换单元 ...
- copy-webpack-plugin & ignore folder
copy-webpack-plugin & ignore folder https://github.com/webpack-contrib/copy-webpack-plugin#ignor ...
- TDD & Unit testing
TDD & Unit testing TDD jest https://github.com/facebook/jest https://facebook.github.io/jest/zh- ...
- Vue & mobile UI components
Vue & mobile UI components https://github.com/vuejs/awesome-vue https://awesome-vue.js.org/ http ...
- flex layout & demos
flex layout & demos https://codepen.io/xgqfrms/pen/jjLPKN https://css-tricks.com/snippets/css/a- ...