🦄 2024 独立开发者训练营,一起创业!查看介绍 / 立即报名(剩余10个优惠名额) →

路径(十二):在本地 CentOS 7 上搭建 Web 开发环境 — 准备工作

在本地搭建一个 Web 开发环境,把你想创建的 Web 应用放到这个环境上去运行,比如你可以把 Drupal,WordPress,Laravel 放上去运行。搭建本地的开发环境可以作为学习 Web 开发的第一件要干的事。放弃所有一键安装的开发环境,比如 WAMP,XAMPP,MAMP ... 这些都过时了,听起来容易,但是对我们没什么好处。我们在本地创建一个虚拟机,虚拟机的操作系统可以跟你的 Web 应用正式运行的服务器的操作系统一样,比如可以使用 CentOS 或者 Ubuntu ,这台虚拟机用 Vagrant 去管理。

Web 应用在本地开发时候的运行环境,最好可以跟它正式运行的服务器环境,也就是生产环境一致。比如在你在生产环境,应用的 Web 服务器与数据库是两台不同的服务器,你在本地也可以模拟出这种情景,可以使用 Vagrant 为一个项目创建多台虚拟机。另外软件的版本也要保持一致,如果在生产环境上 Web 服务用 Nginx 提供,PHP 的版本是 5.6,在本地你也可以在虚拟机上安装 Nginx 的服务器,5.6 版本的 PHP。

在以后我们可能会用到 Docker,它可以把应用的各个组件分离出来,然后各自装箱(Container),比如把 Web 服务器放到一个箱子里,数据库放到一个箱子,缓存服务放到一个箱子,应用都是在这些箱子里运行的,你可以把这些箱子放到任何支持这些箱子的平台上去运行。这样你就不需要担心应用在不同的环境下的不同反应了,你知道你的应用是怎么运行的,因为是你自己装的箱,箱子里的结构是你自己设计的。

现在我们要做的,是熟悉 Linux 系统的基本的操作,你应该已经学会了怎么样用 Linux 的包管理工具去管理系统上的软件。下面,我们再去手工的在本地去配置一个可以让 Web 应用运行的环境。 这跟在服务器上搭建生产环境的过程是差不多的,比如在阿里云的 ECS 上搭建 Web 服务环境,下面我们在本地电脑上再重复一次。

文章里用的 Linux 虚拟机的系统是 CentOS 7.0。可以给 Vagrant 添加一个 chef/centos-7.0 这个 box,然后用这个 box 去初始化项目。在百度云盘下载这个 box :http://pan.baidu.com/s/1qWmc18S,centos-7.0_chef.box 。

准备虚拟机

学会用 Vagrant 管理虚拟机,知道怎么样配置主机跟虚拟机之间的共享目录网络。具体的步骤:

1. 进入桌面。

cd ~/desktop

2. 为项目新建一个目录。

mkdir ninghao-project

3. 进入这个项目的目录。

cd ninghao-project

4. 查看可用的 box。

vagrant box list

5. 用列表中的 box 初始化项目,我有一个叫 chef/centos-7.0 的 box ,你需要自己去添加 CentOS 系统的 box,然后:

vagrant init chef/centos-7.0

6. 在项目下面新建一个叫 app 的目录,一会儿再把这个目录设置成跟虚拟机共享的目录。

mkdir app

7. 配置网络。打开项目目录下面的 Vagrantfile,添加下面的配置,设置一下虚拟机的网络,私有网络,IP 地址是 192.168.33.10。

config.vm.network "private_network", ip: "192.168.33.10"

8. 配置共享目录。再配置一下主机与虚拟机之间的共享目录,这个目录在主机上是项目下面的 app 目录,在虚拟机上的位置是 /vagrant。

config.vm.synced_folder "app", "/vagrant"

9. 启动虚拟机。

vagrant up

10. 连接到虚拟机。

vagrant ssh

注:Windows 用户用 Putty 工具连接到虚拟机。

添加仓库

下面我们去为系统添加两个仓库,epel 还有 ius,它们提供了更多可以通过包管理工具安装的软件包 。根据自己系统的类型与版本在这里下载:https://iuscommunity.org/pages/Repos.html

QQ20150126-1

cd ~
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
wget http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-13.ius.centos7.noarch.rpm

用 wget 或 curl 命令可以把文件下载下来,文件的格式是 .rpm ,我下载的是用在 CentOS 7 上的软件包,把它们放到了用户主目录的下面。下面用 rpm 工具先去安装一个 epel-release,然后再安装一下 ius-release。需要管理员权限,可以使用 su 或者直接在命令前加上 sudo。

su
rpm -ivh epel-release-7-5.noarch.rpm
rpm -ivh ius-release-1.0-13.ius.centos7.noarch.rpm

查看一下系统上的仓库列表,你会看到 epel 还有 ius 这两个我们刚才安装的仓库。

yum repolist

返回:

源标识                                      源名称                                                
base/7/x86_64                               CentOS-7 - Base                                           
epel/x86_64                                 Extra Packages for Enterprise Linux 7 - x86_64            
extras/7/x86_64                             CentOS-7 - Extras                                         
ius/x86_64                                  IUS Community Packages for Enterprise Linux 7 - x86_64    
updates/7/x86_64                            CentOS-7 - Updates                                        
repolist: 17,373
路径 CentOS

评论

这些不同的包有啥区别啊?还有repolist: 17,373这个数字是啥意思?

现在添加仓库epel 和 ius的方法改了,在centos下,添加epel直接用yum -y install epel-release,然后在下载添加ius仓库
官网说明:https://ius.io/GettingStarted/

非常感谢。

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点