使用 Vagrant 并搭建 LNMP 环境
vagrant介绍
Vagrant 是一个软件,是一个自动化构建虚拟机环境的工具,可以自动化虚拟机的安装和配置流程。
在团队开发的情况下,我们常常需要在多台机器间同步开发时,有的同事用的 wamp ,有的同事是用的 xampp ,可能在某些配置上的些许不同会导致些许不同或者bug,通过使用 vagrant ,我们只需要同步 Vagrantfile ,就可以保证各台机器拥有一致的开发环境。也可以通过打包好一个vagrant box ,供团队的同事使用,这样就能最大程度的保证开发环境一致,避免出现一些没必要的问题从而浪费精力去解决。
安装vagrant
1、安装 virtualBox ,具体安装包直接从官网下载(要下载顺畅的话需翻墙):https://www.virtualbox.org/wiki/Downloads
2、安装 vagrant,下载地址:https://releases.hashicorp.com/vagrant/
3、下载box镜像,这里我是下载的Ubuntu的box,可以到这个网址上去查找想下载的box:https://app.vagrantup.com/boxes/search
切换到自己的文件夹下,初始化vagrant环境,生成一个vagrantfile文件,命令如下:
- 用 vagrant 命令加 box
$ vagrant box add testUbuntu ~/Downloads/ubuntu-14.04-amd64.box
- 初始化虚拟机
$ vagrant init testUbuntu
- 启动虚拟机
$ vagrant up
- 进入虚拟机的 Ubuntu 系统
$ vagrant ssh
接下来还要对虚拟机进行一些配置。
打开 vagrantfile 文件进行配置,我的配置如下:
到这里,利用 vagrant 搭建虚拟机环境就基本完成了。
- vagrant 常用命令
vagrant box add 添加box,自动帮你生成vagrantfile vagrant init 初始化vagrantfile vagrant halt 关闭虚拟机 vagrant destroy 销毁虚拟机 vagrant ssh 连接虚拟机 vagrant reload 重新加载vagarntfile文件 vagrant suspend 暂时挂起虚拟机 vagrant status 查看虚拟机运行状态 vagrant package --output 打包导出box
搭建 LNMP 环境
使用 vagrant ssh 登录到虚拟机的 Linux 系统上,就可以开始搭建 LNMP 的环境了。
在安装软件之前,需要对 Ubuntu 系统的镜像源文件 source.list 进行修改一下,可以在网上找一下网易的镜像源或者是阿里搜狐等的镜像源,然后写入 source.list 文件夹里(对源文件先进行下备份)。修改完之后还要运行一下 apt-get update
命令来更新一下镜像源。
安装 Nginx
使用apt-get install nginx
便可以安装nginx。非常简单。
安转完之后,可以使用 curl -I '127.0.0.1'
访问一下,看看是否安装成功。
安装 MySQL
使用 apt-get install mysql-server mysql-cli
安装MySQL的服务端可客户端,安装的时候需要设置一下密码。安装完之后,通过命令 mysql -uroot -ppassword
命令来登录数据库。
安装PHP 7.0
在这里,我使用 Ubuntu 的 PPA 来安装 PHP 7.0。
- 先介绍一下 PPA
PPA 全称为 Personal Package(个人软件包档案),是 Ubuntu Launchpad 网站提供的一项服务,当然不仅限于 Launchpad 。它允许个人用户上传软件源代码,通过 Launchpad 进行编译并发布为二进制软件包,作为 apt/新立得源供其他用户下载和更新。在Launchpad网站上的每一个用户和团队都可以拥有一个或多个PPA。
通常 PPA 源里的软件是官方源里没有的,或者是最新版本的软件。相对于通过 Deb 包安装来说,使用 PPA 的好处是,一旦软件有更新,通过 sudo apt-get upgrade 这样命令就可以直接升级到新版本。
- 如何通过 PPA 源来安装软件:
我们可以通过 Google 来搜索一些常用软件的 PPA 源,通常的搜索方法是软件名称关键字 + PPA ,或者也可直接到 launchpad.net 上去搜索,搜索到后我们就可以直接用 sudo apt-add-repository 命令把 PPA 源添加到 Source list 中了。
比如 FireFox PPA 源:https://launchpad.net/~ubuntu... ,我们可以在这里找到 ppa:ubuntu-mozilla-daily/ppa 的字样,然后我们通过以下命令把这个源加入到 source list 中。
sudo apt-add-repository ppa:ubuntu-mozilla-daily/ppa
- 开始安装 PHP 7.0
第一次使用PPA时,需要先安装一下 python-software-properties 和 software-properties-common
apt-get install python-software-properties software-properties-common
然后便可以开始安装PHP 7.0 了
$ add-apt-repository ppa:ondrej/php $ apt-get update
安装PHP的一些扩展
$ apt-get install php7.0-fpm php7.0-mysql php7.0-common php7.0-curl php7.0-cli php7.0-mbstring php7.0-dom
打开 php.ini进行配置
vim /etc/php/7.0/fpm/php.ini
将cgi.fix__pathinfo=1 改成cgi.fix__pathinfo=0,这个配置是为了避免 nginx 产生某个漏洞。具体参考鸟哥的文章http://www.laruence.com/2010/05/20/1495.html
cgi.fix_pathinfo=0
然后重启一下 php-fpm 服务。
到这里就成功搭建好了 LNMP环境了。
happy codding ! ^_^