LNMP环境的搭建与配置(二)

LNMP环境的搭建与配置(二),第1张

在上一篇中,我假定了一个搭建个人博客网站的目标,并选择使用 LNMP(CentOS+Nginx+Mariadb+PHP) 作为网站开发环境。以下则分部介绍如何搭建这样的一个环境。

搭建网站的整个过程中会用到很多工具,这里我们使用Windows10作为工作环境,暂时简单的汇总一下需要使用的工具,以后想到或者遇到更好的工具,再做替换吧...

使用Xshell登录到云服务器。

完成第二部分,你基本基本已经安装成功 LNMP 环境了,在安装过程中,可能会遇到一些问题,可以百度搜索下,或者可以在评论区留言。

安装完成 LNMP 环境后,接下来要做的就是为你的服务器添加网站了。基本按照以下几个步骤:

搭建一个网站首先要考虑的是要有一个域名,推荐去阿里云购买一个属于自己的域名,也可以去 godaddy.com 购买。这里要注意的是,如果你的服务器是在国内,在搭建网站前要先对的域名进行ICP备案。备案方法阿里云都有提供,当然了,如果你用的是国外的服务器,或者港澳台的,就不必备案了。备案提交后需要等10个工作日左右的时间才能通过。

Linux 里, 目录 就是windows中文件夹的意思, 网站目录 就是你存放网站文件的文件夹,你可以新建这个文件夹,然后给予这个 文件夹 一定的管理权限,并且这个文件夹只存放网站的相关文件而不存放其他文件。

Centos 系统中,创建文件夹使用的是 mkdir 这个命令。关于Centos中常用的命令在另一篇文章中我会总结出来,常用的也就十几个吧,当然,如果想熟练掌握 Linux 的命令行则需要漫长的学习,推荐看下 鸟哥的Linux私房菜 一书。

比如现在你买了 test.com 这个域名,接下来你可以创建一个名叫test.com的文件夹(文件爱夹的名字可以随意,为了方便一般用域名作为文件夹名),并且想把它放在 /mnt/www/ 目录下。

这样你就创建好了 test.com 这个域名的专用的网站文件夹,你可以在这个文件夹里上传一些网页文件了,或者你可以将一些CMS软件包解压到这个文件夹里了。

先小结一下进度,你准备搭建一个叫 www.test.com 的网站。现在,你已经购买了一个叫 test.com 的域名并且解析到了服务器的IP,配置好了基本的 LNMP 环境,创建好了 test.com 专用的网站文件夹 test.com/

如果你现在打开浏览器访问 test.com 你会发现显示的只是 nginx 的欢迎页面。这是因为到目前为止,nginx并不知道你创建了一个网站文件夹,也不清楚你的域名应该“接待”到哪里,所以你需要配置一个网站专用的 nginx.conf 文件,你可以把这个文件命名为 test.com.conf ,并且把他放在 nginx/conf.d 下。注意: nginx/ 文件在 Centos 系统下,默认的存放路径是 /etc/nginx

这里你可以使用到 vim 命令。具体如下:

至此,你的nginx配置成功了。这时候在重启以下 nginx 使得新增的配置文件生效。

到这里可以再总结一下进度了:

完成以上几步,现在打开浏览器登录test.com网址,应该可以成功访问了,当然你要现在网站目录里上传一些自己做好的网页文件。

关于 LNMP 环境的搭建与配置基本就是这样了,中间你可能会遇到各种各样的麻烦或报错,别气馁,多百度谷歌,或者留言,相信自己总会成功的~

LAMP和LNMP区别:

1、定义不同:

lamp:是Web应用软件组合。

lnmp:指的是一个基于CentOS/Debian编写的Nginx、PHP、MySQL、phpMyAdmin、eAccelerator一键安装包。

2、作用不同:

lamp:是Linux(操作系统)、ApacheHTTP 服务器。一般用来建立web应用平台。

lnmp:是用来在Linux系统下Nginx+MySQL+PHP这种网站中搭建服务器架构。

3、用户评价不同:

lamp:LAMP是最强大的网站解决方案。

lnmp:lnmp搭建的Linux系统,是目前最流行的免费操作系统。

4、软件组件不同:

lamp:Linux、Apache、MySQL、PHP,Perl 或 Python。

lnmp:Nginx、MySQL、PHP、PHPMyAdmin、Apache(可选)、Zend Optimizer(可选)、eAccelerator(可选)、ionCube(可选)、PureFTPd(可选)、VsFTPd(可选)。

5、适用环境不同:

lamp:

系统支持:CentOS-5 (32bit/64bit)、CentOS-6 (32bit/64bit)等linux系统

内存要求:≥256M

lnmp:

CentOS 5.8 32Bit / 64Bit

CentOS 6.2 32Bit / 64Bit

CentOS 6.3 32Bit / 64Bit

参考资料:

百度百科:lamp

百度百科:lnmp

步骤1:为我们的容器创建第一个镜像

# 以 centos 镜像作为基础镜像,我们启动自己的容器并在其中执行/bin/bash命令

# 注:-t -i 参数用于创建一个虚拟的命令行。

sudo docker run -t -i centos /bin/bash

现在我们已经成功的运行了自己的第一个容器,并且进入到容器的命令行界面中。在容器中,我们执行下面的命令:

yum -y update # 更新软件包

yum install which # 安装which命令

yum install git # 安装Git

安装完成后,按 Ctrl + d 来退出容器的命令行。

# 执行sudo docker ps -a,可以看到被我们终止的容器

CONTAINER IDIMAGE COMMAND CREATED……

da9031d3568fcentos:6.4 /bin/bash 5 minutes ago…..

把我们所做的改变提交到一个新的容器:

# 这里我们创建一个自己的基础容器,容器中安装好了文章中所需的常用工具。读者的容器 id 可能与文章中的有所不同,以上一步 docker ps -a 的结果为准。

sudo docker commit da90 custom/base

容器成功提交后,执行 sudo docker images ,我们会看到刚才提交的容器(如下面的结果所示)。我们就以这个容器为基础容器,再来创建一个新的容器。

REPOSITORY TAG IMAGE IDCREATED

custom/base latest 05b6cecd370b2 minutes ago

centos 6.4 539c0211cd7610 months ago

centos latest 539c0211cd7610 months ago…

步骤2:创建新的容器,并安装 apache

# 以 custom/base 容器为基础,运行一个新的容器。

sudo docker run -t -i custom/base /bin/bash

# 安装 httpd

yum install httpd

步骤3:再次提交新的容器

按 Ctrl + d 来退出容器的命令行,然后执行命令:

# 这个命令会把步骤2中我们安装 httpd 带来的改变提交到新的名为 custom/httpd 的容器镜像中。你的容器 id 可能会和文章中有所不同,以 sudo docker ps -a 命令的结果为准。

sudo docker commit aa6e2fc0b94c custom/httpd

你应该已经发现了,我们创建了一个带有 http 服务器并可以复用的容器镜像。你可以根据这种思想,为自己所需的每个组件都创建一个容器,然后把这些容器复用于开发环境或者生产环境。

步骤7:运行 http 服务器

# -v will Mount a volume from VM to the container which was also shared from host to Vagrant VM.

# -v 参数把主机共享给虚拟机的一个卷挂载到容器中

# -p forward VM port 80 to container port 80VM port 80 is mapped to host port 8080 in Vagrantfile

# -p 参数把虚拟机的80端口映射到容器的80端口;虚拟机的80端口在 Vagrantfile 中被绑定到主机的8080端口,也就是:主机8080->虚拟机80->容器80

sudo docker run -t -i -p 80:80 -v /vagrant/htdocs:/var/www/html custom/httpd /bin/bash

# 启动 Apache

apachectl -k start


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/184960.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-29
下一篇2023-03-29

发表评论

登录后才能评论

评论列表(0条)

    保存