如何在Vagrant中设置LAMP开发环境

在上一个教程中,我们已经了解了Vagrant的基础知识。在本教程中,我们将移至下一级,并将了解有关Vagrant的更多信息...

在上一个教程中 ,我们了解了Vagrant的基础知识。 在本教程中,我们将进入下一个级别,并将在Vagrant中了解有关Vagrant的更多信息和设置LAMP开发环境。

首先,LAMP代表: L inux(OS /内核), A pache(Web服务器), M ySQL (数据库), P HP(脚本语言)。 它是一个开源的Web开发环境,可让您创建Web应用程序。 它通常也称为Web Stack。

现在让我们在Vagrant中安装LAMP开发环境,步骤如下:

#1-创建一个我们将要创建的实例的目录:

mkdir -p ~/Vagrant/lamp

cd  ~/Vagrant/lamp

#2-现在我们需要初始化Vag ra nt框。 在这里我们有两个选择。

#2.1-一,我们可以重新使用Ubuntu 12.04 LTS(Precise Pangolin)盒,我们已经在上一个教程中下载了 。 要使用这个,只要做:

vagrant init precise32

#2.2-第二个选项我们是通过下载Ubuntu 12.04 LTS(Precise Pangolin) Vagrant Box来做一个新添加的盒子,如下所示:

vagrant box add precise32 http://files.vagrantup.com/precise32.box

然后做:

vagrant init precise32

请注意,#2.2仅适用于那些尚未下载Ubuntu 12.04 LTS(Precise Pangolin) Vagrant Box的用户。

#3现在做:

vagrant up

这将创建一个VagrantFile 。 编辑 VagrantFile如下:

Vagrant.configure(2)do | config |
config.vm.box =“precise32”

#提到SSH用户名/密码:
config.ssh.username =“vagrant”
config.ssh.password =“vagrant”
#开始配置
config.vm.define“lamp”do | lamp |

lamp.vm.hostname =“lamp”#设置主机名
lamp.vm.network“private_network”,ip:“192.168.205.10”#设置机器的IP地址
lamp.vm.provision:shell,path:“script.sh”#使用script.sh进行配置
结束

#结束配置
结束

请注意 - 我已经删除了注释行,以避免混淆。

你可以从这里下载这个文件。

#4-现在让我们开始配置LAMP安装。 为此,使用您喜欢的文本编辑器创建一个名为script.sh的简单shell脚本:

#!/bin/bash

# Updating repository

sudo apt-get -y update

# Installing Apache

sudo apt-get -y install apache2

# Installing MySQL and it's dependencies, Also, setting up root password for MySQL as it will prompt to enter the password during installation
sudo debconf-set-selections <<< 'mysql-server-5.5 mysql-server/root_password password rootpass'
sudo debconf-set-selections <<< 'mysql-server-5.5 mysql-server/root_password_again password rootpass'
sudo apt-get -y install mysql-server libapache2-mod-auth-mysql php5-mysql
# Installing PHP and it's dependencies sudo apt-get -y install php5 libapache2-mod-php5 php5-mcrypt

你可以从这里下载这个文件。

#5-保存script.sh后 ,运行:

vagrant up


它会做很多事情。 你可以看到它在stdout上正在做什么。 为了给你一个概述,它将从导入精确的32个基本框开始,然后它将SSH插入框中,然后它将设置机器的主机名(我们在Vagrantfile中指定了这个 ),然后开始更新和安装灯泡。

请注意 - 在安装mysql-server的同时 ,它会将其root密码设置为“rootpass”,因为我们在script.sh文件中提到了这一点。

#6-现在安装完毕后,你已经准备好了。 SSH进入流氓框为

vagrant ssh


#7-通过以下方式验证安装:

dpkg -l | grep "apache2\|mysql-server-5.5\|php5"


您将看到列出所有这些软件包,这意味着它们已经成功安装。 这样你就可以在Vagrant设置LAMP开发环境了:)

提示 - 您现在可以将此框保存到当前状态( Ubuntu 12.04 LTS with LAMP )为:

第1步-出发的Vagrant盒子发出:

exit

第2步-将此框包装为:

vagrant package --output ubuntu1204_LAMP.box

默认情况下,这将创建一个ubuntu1204_LAMP.box文件,您可以重新使用LAMP已经安装的基本框。

为了保持组织状态,创建一个目录,您将存储所有这些框,并将此ubuntu1204_LAMP.box移动到其中:

mkdir -p ~/Vagrant/boxes

mv ubuntu1204_LAMP.box ~/Vagrant/boxes

您可以随时导入并初始化此框:

vagrant init ubuntu1204_LAMP file:~/Vagrant/boxes/ubuntu1204_LAMP.box

作者:Sanchit Jain Rasiya