Tomcat+Nginx+Linux+Mysql部署豆瓣TOP250的项目到腾讯云服务器

写在前面
因为前面有写过一篇关于豆瓣的top250的电影的可视化展示项目,你可以移步http://blog.csdn.net/liuge36/article/details/78607955了解这个项目。因为,想着,完全可以把这个项目部署到我们的腾讯云服务器上。说干就干,直接切入正题。

实验环境

一台云服务器(含一个公网的ip)
Tomcat7+
Nginx(我用得是1.12的)
Mysql(5.1+)
Linux(我用的是centos6.8)
实验环境选择什么版本问题不大,合理选择就好。
我也提供了我的环境的软件包,你可以从分享的百度云地址上面下载:

开始

(一)搭建好我们的实验环境

使用云服务器的话,安装系统这一步,就不用考虑了,因为基本上就是一键选择重装,这里,我们就默认大家安装好了,接下来,开始软件的安装。

1).安装tomcat

  1. 下载啊
    这个的下载地址可以直接到官网下载,官网下载的速度也是很快的,http://tomcat.apache.org/
    这里写图片描述

    在linux上面我们可以使用wget命令直接下载,当然,你也可以选择先下载到本地,然后上传到自己的服务器上面去

[root@VM_57_70_centos softwares]# ls ap*
apache-tomcat-7.0.82.tar.gz  apache-tomcat-8.5.23.zip
[root@VM_57_70_centos softwares]# 

2.我已经下载好了,开始解压

[root@VM_57_70_centos softwares]# tar -zxf apache-tomcat-7.0.82.tar.gz -C ../apps/
[root@VM_57_70_centos softwares]# cd ../apps/
[root@VM_57_70_centos apps]# ls
apache-tomcat-7.0.82
[root@VM_57_70_centos apps]# mv apache-tomcat-7.0.82 tomcat7
[root@VM_57_70_centos apps]# ls
tomcat7
[root@VM_57_70_centos apps]# 

3.解压出来之后
可以先来测试(修改默认的配置文件的端口,也可以不用修改)

[root@VM_57_70_centos ~]# cd apps/tomcat7/conf/
[root@VM_57_70_centos conf]# vim server.xml
#简单修改配置文件的端口就可以
#找到<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
            redirectPort="8443" />
#修改port="80"
#:wq保存退出就好

4.接下来,就可以启动我们的服务啦
这里写图片描述
5.测试访问:
这里写图片描述
看到上面的界面,就说明你ok啦

2).安装nginx

nginx是一款非常优秀的反向代理服务器,对于海量高访问量,也是能够做到很好的支撑,但是,由于它只能做静态数据的处理,例如,css,img,js等。所以,一般的做法是,把它和tomcat服务器联合起来使用。

  1. 下载啊
    同样,也是去到官网,下载的速度也还是很快的
    这里写图片描述

2.解压

[root@VM_57_70_centos softwares]# ls n*
nginx-1.12.2.tar.gz
[root@VM_57_70_centos softwares]# tar -zxf nginx-1.12.2.tar.gz -C ../apps/
[root@VM_57_70_centos softwares]# 
[root@VM_57_70_centos softwares]# ls ../apps/
nginx-1.12.2  tomcat7
[root@VM_57_70_centos softwares]# 

解压到apps目录下之后,开始安装
3.在开始安装之前,先安装依赖

#安装依赖:
yum -y install gcc gcc-c++ autoconf automake make
yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel

接下来,就是编译安装

[root@VM_57_70_centos nginx-1.12.2]# ./configure 
#这里我们全部默认就好,当然也是可以自定义的安装目录什么的
#过一会儿,出现

这里写图片描述
如果不是上面这样,出现报错的话,就可能是你的依赖没有安装好,查看你的错误,安装好差的依赖,再次编译就ok

[root@VM_57_70_centos nginx-1.12.2]# make&make install

这里写图片描述

出现上面的结果,说明你就安装成功啦 。
默认的安装目录是在

[root@VM_57_70_centos nginx-1.12.2]# whereis nginx
nginx: /usr/local/nginx
[root@VM_57_70_centos nginx-1.12.2]#

我们可以创建一个软连接,方便我们后面使用nginx的命令

[root@VM_57_70_centos nginx-1.12.2]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin

4.关闭之前的tomcat服务,因为nginx默认的端口就是80,不然会冲突的

[root@VM_57_70_centos bin]# pwd
/root/apps/tomcat7/bin
[root@VM_57_70_centos bin]# ./shutdown.sh 
Using CATALINA_BASE:   /root/apps/tomcat7
Using CATALINA_HOME:   /root/apps/tomcat7
Using CATALINA_TMPDIR: /root/apps/tomcat7/temp
Using JRE_HOME:        /root/app/jdk1.8.0_151
Using CLASSPATH:       /root/apps/tomcat7/bin/bootstrap.jar:/root/apps/tomcat7/bin/tomcat-juli.jar
[root@VM_57_70_centos bin]# 

5.安装好了之后,就可以启动啦
如果你创建了软连接,可以在任意位置输入nginx来启动

这里写图片描述

在测试之前,我们可以来做一个反向代理了

1.先修改tomcat服务器的端口号

[root@VM_57_70_centos tomcat7]# vim conf/server.xml
修改端口为8111,端口号看自己的情况,

 <Connector port="8111" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <!-- A "Connector" using the shared thread pool-->

2.在nginx服务器上面去做反向代理
修改配置文件:

[root@VM_57_70_centos nginx-1.12]# vim conf/nginx.conf

这里写图片描述

上面这句话的意思就是,把所有到80nginx服务器的请求全部丢给本地8111来出来,8111端口正是我们的tomcat服务器。这样nginx就把访问交给tomcat来做了。

这个时候,就可以来访问了:

这里写图片描述

你会发现,我们的请求是默认的80端口,但是它依然出现的是tomcat的页面,而且这个过程,用户(浏览器)是完全不知情的。

3).安装mysql

说明,因为我这里已经安装好了mysql,我就给出我安装的步骤就好,你按照这个步骤也会是完全没有问题的

第1步、查看CentOS下是否已安装mysql
输入命令 :yum list installed | grep mysql

第2步、删除已安装mysql
输入命令:yum -y remove mysql

上面两步做好之后,就是可以来正式安装了
我们这里直接使用yum来安装了,当然,你也可以使用其他方式,好像目前在centos6.8上面的默认yum库mysql是5.1版本的,如果,你想使用高版本的,你可以选择更换其他的yum源,或者直接官网下载

第3步,我这里直接yum安装了

我们只是需要mysql-server

yum -y install mysql-server

过一会儿,就会安装好的

如果你想查看是否安装成功,你可以使用:

rpm -qi mysql-server

出现:
这里写图片描述

第4步,安装好了之后,就可以启动mysql服务啦

[root@VM_57_70_centos bin]# service mysqld restart
Stopping mysqld:                                           [  OK  ]
Starting mysqld:                                           [  OK  ]
[root@VM_57_70_centos bin]# 

第5步,进入MySql

输入命令:mysql -u root
如果出现ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ 错误,可能是服务未开启,也可能是/var/lib/mysql的访问权限问题。
如果是服务未开启:service mysqld start
如果是访问权限问题:chown -R root:root /var/lib/mysql

说明,我这里直接把它加入root我的当前操作用户

第6步,修改root密码
mysql > use mysql;
mysql > update user set password=password(‘123456‘) where user=‘root‘;

上面的密码123456,自己设置就好,设置好之后,你就可以使用
mysql -u root -p 登录啦
这时,你要是输错密码是进不去的
这里写图片描述

第7步,开放远程登录权限(你要是想远程登录的话)

输入命令:

GRANT ALL PRIVILEGES ON * . * TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
刷新:
FLUSH PRIVILEGES;

第8步,关闭防火墙

service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off

vim /etc/selinux/config
修改,为disabled

第9步,设置开机启动
chkconfig mysqld on

到这里,我们的mysql就安装好啦,可以使用本地的Navicat来测试一下

这里写图片描述

好的,没有问题,上面的article和news是我我之前的,

部署豆瓣TOP250的项目

1.先把远程mysql数据库里面添加好表和数据

这里写图片描述

服务器上面的数据已经放好了

我们把之前的项目打包成一个war文件

这里,我想说一下,如何从idea把项目打包成war的压缩包

这里写图片描述

这里写图片描述

选择我们的web目录

这里写图片描述

这里写图片描述

设置好之后
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

接下来将生成的war包上传到服务器

这里写图片描述

posted @ 2017-12-01 11:03  liuge36  阅读(74)  评论(0编辑  收藏  举报