使用vagrant一键部署本地php开发环境(一)[通俗易懂]

使用vagrant一键部署本地php开发环境(一)

大家好,又见面了,我是全栈君。

一:我们为什么需要用这玩意

    我们在开发中经常会面临的问题:环境不一致,有人用Mac有人用Windos还有几个用linux的,而我们的服务器都是linux。
    在我本地是可以的啊,我测了都,没有问题啊,然后看着上线之后的500错误懵比。It works on my pc .

二:vagrant是什么东西

Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。——————-来自百度百科。

直白的说是一键生成特定虚拟机的工具。详细的我们下边会说。
三:所需的软件:
1、virtualBox

可以到VirtualBox的官网进行下载:
https://www.virtualbox.org/wiki/Downloads
2、vagrant

可以到vagrant官网下载
https://www.vagrantup.com/downloads.html

这个下载特别慢,这里放出百度云的链接

链接: https://pan.baidu.com/s/1Toy3SRRACOWa8g0ybUHD8Q 密码: puwm
3、vagrant box

    vagrant部署环境,需要一个box文件。如果在公司里面,可以从他们那里拷一个box文件安装。这样安装的环境与他们的开发环境是一致的。box文件也可以在网上下载。搜索:vagrantbox

http://www.vagrantbox.es/

(备注:这个地址实际上是失效的,很多box文件都找不到资源了,不过不要紧,因为我们可以自己做一个box,这个在下一篇文章我会讲如何定制一个自己的box,顺道放一个我制作好的基于centos7且安装好lnmp1.5的box)链接: Centos-lnmp.box密码: tssp
四:工作流程使用vagrant一键部署本地php开发环境(一)[通俗易懂]

五:vagrant的日常使用

下载以上vagrant和virtualbox之后,一路next安装,安装完成之后。

在任意位置新建一个文件夹,来管理你的box ,比如我们在D盘新建一个vagrant文件夹

1.把你下载的box文件扔进来,如图:使用vagrant一键部署本地php开发环境(一)[通俗易懂]

2.我们在这个位置打开git-bash,或者用cmd切换到这个目录,我们以git-bash为例:

1)执行

vagrant.exe  box add centos centos-lnmp.box

该命令是给box起名并添加到box列表,注意:win10系统在执行“ vagrant box add centos7 vagrant-centos-7.box”添加box时,报错“Vagrant failed to initialize at a very early stage: Failed to locate the powershell executable on the available PATH. ”

需要注意的就是在cmd命令窗口下可以不用.exe  直接执行

vagrant box add {name(你要起的名字随意)}  {url/file(本地文件地址或远程地址)}

使用vagrant一键部署本地php开发环境(一)[通俗易懂]

 

2)执行命令

vagrant.exe init {centos(刚刚add操作时起的名字)}

就像这样,这个命令会初始化box并生成一个Vargrantfile的配置文件,在这个文件里我们可以 设置一些配置信息,比如共享主机目录到虚拟机目录,网络,虚拟机ip等信息。
使用vagrant一键部署本地php开发环境(一)[通俗易懂]

 

打开配置文件

使用vagrant一键部署本地php开发环境(一)[通俗易懂]
这些配置项默认都是注释掉的,我们需要找到这两行进行设置。其中共享目录的配置我们可以这样写,第一个参数为本地目录,第二个参数是虚拟机目录,/ 代表了虚拟机下的根目录。

通过共享目录设置,我们可以把我们的项目开发目录映射到虚拟机目录,通过虚拟机配置nginx,来让项目直接跑在虚拟机中。

config.vm.synced_folder "D:/data", "/vagrant_data"

3)部署环境

执行命令

vagrant.exe up

就可以一键部署虚拟机环境了
使用vagrant一键部署本地php开发环境(一)[通俗易懂]
4)虚拟机管理

执行命令 vagrant.exe ssh

vagrant.exe ssh

就能直接链接到虚拟机的系统了,目录已经挂载好了,接下来就是考验你linux操作能力的时候了,我们可以在这上边查看日志等等一系列事情。

备注:你也可以通过xshell来链接你的虚拟机,ip就是你配置的ip端口22,用户名密码均为vagrant

一般来说虚拟机启动之后就不需要管了。不过对于项目开发而言,你还需要做的一件事就是修改本地的hosts文件,让你请求的虚拟域名指向你的虚拟机ip。
六:vagrant常用命令

 vagrant init      # 初始化
    vagrant up        # 启动虚拟机
    vagrant halt      # 关闭虚拟机
    vagrant reload    # 重启虚拟机
     vagrant ssh       # SSH 至虚拟机
    vagrant status    # 查看虚拟机运行状态
    vagrant destroy   # 销毁当前虚拟机
    vagrant box list    # 查看本地box列表
    vagrant box add     # 添加box到列表
     vagrant box remove  # 从box列表移除 

原文:https://blog.csdn.net/qq_39195042/article/details/82700277

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/112249.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • startservice生命周期_task scheduler 启动后停止

    startservice生命周期_task scheduler 启动后停止ExecutorService接口继承了Executor接口,定义了一些生命周期的方法Java代码publicinterfaceExecutorServiceextendsExecutor{ voidshutdown(); List<Runnable>shutdownNow(); booleanisShutdown(); bool…

  • 屡次停止运行怎么解决_很抱歉已停止运行解决方法

    屡次停止运行怎么解决_很抱歉已停止运行解决方法背景我一般运行appium都是在osx或者linux上面,最近在教几个同事使用appium做些自动化(爬虫)的事,有几个人使用的是windows,配置环境搞了很久,服务跑起来了之后,用代码运行,又报了上面标题的错误。问题分析首先判断,这是一个python的错误,也就是说,不是appium本身的问题,那就从两点开始分析,要么是系统环境问题,要么是哪里的配置问题。先从配置的问题开始下手,毕竟新手一般都容易犯一些低级错误。但是拿着同事的代码在另一位同事的机器(osx)上跑,怎么都

  • Zabbix监控mysql主从状态

    Zabbix监控mysql主从状态首先我们要监控主从是否正常同步,那么我们需要知道的是,什么东西或者说现象可以判断它的主从复制是正常的是正确的。如上图所示,上述两个参数若同时为yes则说明主从同步正常。那么我们现在就需要用命令去把这个正确的主从复制的状态表达出来。mysql-uroot-p123456-S/data/mysql/3308/mysql3308.sock-e”showslavestatus\G”|…

  • 浅谈QFile

    浅谈QFileQFile是QT中用来处理文件方面的类,对于普通的文件读取,写入,都需要用上的。 简单的一个实例:#include”widget.h”#include”ui_widget.h”#include#include#includeWidget::Widget(QWidget*parent):QWidget(parent),

  • 一文搞懂反卷积,转置卷积

    一文搞懂反卷积,转置卷积一文搞懂反卷积,转置卷积前言本文翻译自《Up-samplingwithTransposedConvolution》,这篇文章对转置卷积和反卷积有着很好的解释,这里将其翻译为中文,以飨国人。如有谬误,请联系指正。转载请注明出处。联系方式:e-mail:FesianXu@163.comQQ:973926198github:https://github.com…

  • 为什么opencv安装成功但import cv2失败_python和opencv

    为什么opencv安装成功但import cv2失败_python和opencv遇到的问题:win10如何安装opencvpycharm中importcv2模块出现错误,找不到该模块处理经过:win10如何安装opencv自己的电脑上已经装有anaconda,下载地址为:https://www.anaconda.com/download/,像numpy等包已经伴随anaconda安装到电脑上了,只需要再安装opencv就行。使用pipinstal…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号