天天看点

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

 一、项目背景

       前一段写了一个在Ubuntu上这套环境的搭建(Ubuntu环境搭建链接地址),在Ubuntu系统中,是测试环境,真是的服务器环境是在centOS系统上跑的,熟悉Ubuntu环境上的搭建,现在再到centOS系统中搭建就方便很多了,因为好多东西都是想通的,会有一点点差别。下面演示一些在centOS环境上的搭建步骤。

        项目背景,现在开发的项目,需要搭建一个Linux环境,方便远端的测试人员访问项目。项目采用的是前后端分离,前端使用Node.js+React+webpack,在部署时,只需要使用webpack打包生成静态文件,就能实现前端的访问。如何实现,下面的不走会一步步介绍,后端时候的是Java开发的后台逻辑,使用Gradle将项目打成war包,部署在服务器上,至于数据库,数据库没有放在服务器上,直接在后台对数据库连接做了连接的处理。

二、安装环境

     此次环境需要安装的有Node.js(前端环境)、Nginx(反向代理服务器)、Tomcat(后端war包部署环境)、Redis(Nosql缓存)、ORACLE 12C (数据库安装)。

  2.1 安装Node.js

     我们可以直接在官网找到系统对应的安装包,我这里是64位,我直接下载了64位安装包,我习惯是下载到本地,把需要的安装的软件包统一的放在一起,然后再上传至服务器方便管理。如果以后有什么问题服务器上的卸载,本地相应的一替换就可以了不需要再去下载,当然也可以直接wget,下面图片有个点击下载时候下载地址,可以直接下载到服务器。这里有一点注意,尽量还是找编译好的 https://nodejs.org/dist下我框住的文件,这里到最后可以省去很多烦心事,而官网提供用一种源码安装,最后还需要运行环境,在编译后的文件上进行操作。总之没有这个直接解压配置安装的省心。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇
Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

下载好压缩文件后,上传至服务器的指定位置,我这里是在/usr/local/文件夹下新建了node文件夹,将其放在node的文件夹下。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

上传完成后就是解压缩,命令:sudo tar xf node-v8.11.1-linux-x64.tar.xz ,解压完成后可以直接删除tar.gz压缩文件。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

设置全局,通过设置软链接的方式(相当于win的快捷方式)

ln -s /usr/local/nodejs/bin/node /usr/local/node/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/node/bin
           

设置完成后,可以直接在命令行测试,node --version, npm --version 如果都能打印出相应的版本,说明安装成功。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

2.2 安装Nginx

      首先还是需要在官网下载,相应的安装包(下载地址)

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇
Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

这里我们还是下载,tar.gz压缩包文件,下载完成后,上传至服务器指定位置,我这里是在/usr/local 下新建了nginx文件,解压缩后,安装依赖库。

//一键安装四个依赖库
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
           

安装:

//进入nginx目录
cd /usr/local/nginx/nginx-1.13.12
//执行命令
./configure
           
//执行make命令
make
//执行make install命令
make install
           
//启动命令
安装路径下的/nginx/sbin/nginx
//停止命令
安装路径下的/nginx/sbin/nginx -s stop      

   开启默认端口80,

firewall-cmd --zone=public --add-port=80/tcp --permanent  //开启端口

  firewall-cmd --reload  //重启防火墙 
           

2.3 安装Redis

     还是在官网中,下载稳定版本的,最新版本功能还是开发中,供大家测试研究,可能会有不稳定的地方,所以为了稳妥起见,还是使用稳定版。下载地址

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

下载完成后,上传至服务器,这里还是跟前面一样,在/usr/local下创建redis文件。解压缩压缩文件,

cd redis-4.0.2 /进入解压地址
           
make 
           
make install //安装
           

Redis安装时候,没有外部的依赖环境,安装完成后,在/usr/local/bin文件中会有相应的redis文件。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

启动:

redis-server
           

开启端口:

firewall-cmd --zone=public --add-port=6379/tcp --permanent  //开启端口

 firewall-cmd --reload  //重启防火墙 
           
Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

2.4  安装Tomcat

在官网下载指定版本的压缩包,我这里下载的是8.5的版本,官网下载地址

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

下载完成后,上传至指定文件夹,这里我在/usr/下创建了 tomcat文件夹,放置在指定文件下,解压缩,然后删除压缩包。tomcat就算是安装完成,接下来是配置的工作。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

2.5 数据库的安装(ORACLE)

    数据库的安装也是比较繁琐的一个过程,特别是ORACLE的,所以我在操作完成后专门写了一个安装过程,详细安装地址参考(链接)。

三、配置

 3.1tomcat 配置

      使用Nginx主要是通过前端的静态资源,当需要请求后端的服务时,需要通过Nginx反向代理到后端的服务(这里使用的是tomcat)。这里我们到tomcat的安装目录,在bin文件下,找到startup.bat文件以管理身份打开。  进入tomcat解压目录,bin文件夹下,vi打开startup.sh 文件

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

在问价末尾追加:

#set java environment

JAVA_HOME=/usr/java/jdk1.8.0_144     //本机jdk安装地址

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOEM/bin:$PATH

export JAVA_HOME  CLASS_PATH  PATH

不知道安装在什么位置的,可以使用whereis java命令查询到

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

编辑完成后,保存退出。

修改端口

根据项目需要,修改tomcat请求端口,我这里使用的还是默认的8080,

打开server.xml文件,文件在安装目录conf下

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

使用vi编辑器,打开配置文件,修改项目指定端口。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

这里根据项目需要,已将端口修改为9090

打开端口,重启防火墙,这里就不介绍了,上面已经写过了,仿照上面的端口开放命令,然后重启防火墙就OK了,将端口修好就可以了。

启动tomcat

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

3.2配置Nginx

        进入Nginx安装目录,在配置文件都在conf/文件夹下,具体的配置这里不一一介绍了,上一篇的ubuntu配置一样具体参考上一篇配置情况。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

四、项目部署

    项目的部署和Ubuntu上部署是一样的,这里就不一一赘述了。详解参考上一篇博客的项目部署。链接

五、总结

     两个系统配置完成后,最大的感触就是ubutun系统搭环境是相当方便的,因为有安装源,很多都无需配置,centOS可能会麻烦一点,这也提高了自己的动手能力。总体来说大部分是相似的。另外需要注意的就是每一个服务所使用的端口,记得一定把相应的端口打开,然后重启防火墙。linux中防火墙这个问题还是不能忽视的,可能因为一个疏忽,配置什么都可以了,外界就是访问不到。我也遇到过这种情况,最后只需要将相应的端口开启,问题就解决。个人公众号,会记录一些学习的心得。有兴趣的小伙伴可以加一下交流共同进步。

Linux搭建服务器Node+Nginx+Tomcat+Redis+Oracle CentOS篇

继续阅读