使用vagrant一键部署本地php开发环境(二)制作自己的vagrant box
在上篇的基础上 ,我们已经安装好了virtualbox和vagrant,没有安装的话,参照上篇
1.从网易镜像或阿里等等镜像下载Centos7
http://mirrors.163.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso
2.打开virtualbox进行虚拟机安装
------------------具体步骤自己百度,没什么难的。
3.虚拟机安装好之后
1)以root用户登陆
登陆之后依次执行 adduser vagrant 和 passwd vagrant命令,创建vagrant用户密码也设置为vagrant。
为vagrant用户配置sudo免密权限:
chmod 0777 /etc/sudoers
vim /etc/sudoers
依次执行这两个命令
在root行下新增vagrant用户,参照图片设置。完事esc :wq保存退出
执行chmod 0440 /etc/sudoers 恢复默认权限
2)配置ssh
执行 yum install openssh-server 如果没安装的话安装一下,如图是已经安装过的。
安装完毕之后执行 vim /etc/ssh/sshd_config
打开监听和端口,并把允许root用户远程登陆打开。
4.下载官方公钥配置 vagrant ssh
1). 下载官方公钥
wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub
2). 重命名authorized_keys,移动到.ssh文件下
mv vagrant.pub .ssh/authorized_keys
3). 修改authorized_keys文件权限 除了属主vagrant以外,group和其他用户都不可写
chmod go-w /home/vagrant/.ssh/authorized_keys
5.安装virtualbox增强工具,为共享目录做准备
1).点击菜单中的 设备 > 安装增强功能
2).切换到根目录创建cdrom目录
cd / && mkdir cdrom && mount /dev/cdrom /cdrom
3).切换到/cdrom并安装高级功能
cd /cdrom && ./VBoxLinuxAdditions.run
4).安装完成关闭虚拟机
6.设置网络规则
网卡1按照如下设置,端口转发规则2222-》22
网卡2设置:
7.打包制作box
在本地主机的任意目录 执行vagrant.exe package --base centos(virtualbox中显示的虚拟机的名称) --output centos-lnmp.box(你给box起的名字,随意),该操作会在当前目录下生成 centos-lnmp.box 接下来你懂的。就又回到第一篇,如何使用box上了。
使用vagrant一键部署本地php开发环境(二)制作自己的vagrant box的更多相关文章
- 使用vagrant一键部署本地php开发环境(一)
一:我们为什么需要用这玩意 我们在开发中经常会面临的问题:环境不一致,有人用Mac有人用Windos还有几个用linux的,而我们的服务器都是linux. 在我本地是可以的啊,我测了都,没有问题 ...
- 使用Vagrant搭建本地python开发环境
使用Vagrant搭建本地python开发环境 关于vagrant:Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境,它使用Oracle的开源VirtualBox虚拟化系统也可以使 ...
- 和重复搭建开发环境说 Bye Bye 之Vagrant
每每新同事入职,都要在自己电脑上配置一堆环境,费神费力:每每开发测试都要重新配置开发环境,手工搭建,步骤很繁琐,极易出错. 大神在时,大神搭建,大神不在,以手抚膺坐长叹.为此,VVVVVagrant横 ...
- docker-swarm建立本地集成开发环境
在k8s出现之后,docker-swarm使用的人越来越少,但在本地集成开发环境的搭建上,使用它还是比较轻量级的,它比docker-compose最大的好处就是容器之间的共享和服务的治理,你不需要li ...
- 使用Git下载Hadoop的到本地Eclipse开发环境
使用Git下载Hadoop的到本地Eclipse开发环境 博客分类: Hadoop *n*x MacBook Air hadoopgitmaveneclipsejava 问题场景 按照官网http: ...
- 使用 docker 部署常用的开发环境
使用 docker 部署常用的开发环境 Intro 使用 docker,很多环境可以借助 docker 去部署,没必要所有的环境都在本地安装,十分方便. 前段时间电脑之前返厂修了,回来之后所有的软件都 ...
- 【Yeoman】热部署web前端开发环境
本文来自 “简时空”:<[Yeoman]热部署web前端开发环境>(自动同步导入到博客园) 1.序言 记得去年的暑假看RequireJS的时候,曾少不更事般地惊为前端利器,写了<Sp ...
- Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核
Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...
- windows部署React-Native的开发环境实践(技术细节)
前情摘要 众所周知,有人说.net可以用Xamrian,呵呵,不习惯收费的好么?搞.Net的人设置一次java的环境变量,可能都觉得实在太麻烦了,可能是因为这些年微软确实把我们给带坏了,所有东西一键安 ...
随机推荐
- 在vue中引用echarts导致Cannot read property getAttribute of null ?
报错信息如下: 之前一直用echarts没有出现过这个问题,所以当这个问题出现时我就开始了各种查,试了几种方法依旧报错,比如: 1.在mounted() {},写成如下形式:(依旧报错) this.$ ...
- list 列表 函数的引用
方法 意义 L.index(v [, begin[, end]]) 返回对应元素的索引下标, begin为开始索引,end为结束索引,当 value 不存在时触发ValueError错误 L.inse ...
- Python学习记录7-继承
面向对象的三大特性 封装 继承 多态 封装 封装就是对对象的成员进行访问限制 封装的三个级别: 公开,public 受保护的,protected 私有的,private public,private, ...
- android提升
https://blog.csdn.net/lou_liang/article/details/82856531
- django请求周期和请求信息
Django的请求周期 1,概述 首先我们知道HTTP请求及服务端响应中传输的所有数据都是字符串. 在Django中,当我们访问一个的url时,会通过路由匹配进入相应的html网页. 那么: Djan ...
- C/C++代码规范
零.前言 笔者最近在看开源代码,看到代码格式各自参差不齐,感觉像是各家各有所长.因此打算写一篇关于C/C++代码规范文章,请各位参考,并践踏批评. 一.文件排版 1. 包含头文件 • 先系统头文件,后 ...
- (四)关于java.lang.IllegalMonitorStateException异常说明
1.异常原因及解释 首先你要了解这个异常为什么会抛出,这个异常会在三种情况下抛出:1>当前线程不含有当前对象的锁资源的时候,调用obj.wait()方法;2>当前线程不含有当前对象的锁资源 ...
- js文件中使用el表达式问题
作者:Sang 单独js文件不能用el表达式. 首先,JSP是由服务端执行的,EL表达式自然也由服务端解析执行,因此如果EL所在的脚本在JSP页面内,它是可以获取到值的,这个值在服务器端返回到浏览器端 ...
- mybatis注解大全
注解 目标 相对应的 XML 描述 @CacheNamespace 类 <cache> 为给定的命名空间 (比如类) 配置缓存. 属性:implemetation,eviction, fl ...
- windows 查看端口占用和杀死进程
在windows命令行窗口下执行:C:\>netstat -aon|findstr "3306" 如上图,端口被进程号为5056的进程占用,继续执行下面命令:C:\>t ...