VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

时间:2021-06-02 16:36:24

概述:篇随笔介绍了在VMware上安装centOS、在centOS上安装JDK、安装Tomcat、安装Redis并部署项目的全过程,虽然参考了很多优秀的文章,但实践、整理、补充都很用心,若要复制粘贴到其他网站,请注明出处。

前提:首先要安装VMware,然后VMware上安装CentOS虚拟机。

再安装CentOS虚拟机:http://jingyan.baidu.com/user/npublic/?un=see0002&pn=21

常用linux指令:

  (1)进入某目录:cd 目录名

  (2)返回上一级目录:cd..

  (3)返回根目录:cd

  (4)进入某文件:vim 文件名;修改文件内容:进入文件后,按i;保存修改的内容并退出文件:esc,然后输入:wq;只退出不保存修改:esc,然后输入:q

安装好centOS虚拟机后进行下述步骤:

一、CentOS设置固定IP

1、直接修改配置文件的方式,原文地址: http://www.cnblogs.com/zhja/p/3964159.html
(1)首先获取你的GATEWAY

    方便后面在cento系统配置里使用选取菜单栏:Edit->Virtual Network Editor

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

选择VMnet8,点击NAT Settings查看一下GATEWAY地址:此处的Gateway IP 为 192.168.110.2

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

接下来就可以进入正题了。

(2)设置CentOS静态IP:

涉及到三个配置文件,分别是:

/etc/sysconfig/network

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/resolv.conf

a.首先修改/etc/sysconfig/network如下:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

b.然后修改/etc/sysconfig/network-scripts/ifcfg-eth0:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

这里注意:IPADDR必须和网关在同一网段内,比如:GATEWAY是:192.168.110.2; NETMASK为:255.255.255.0,IPADDR就必须为192.168.110.*;如果NETMASK为:255.255.0.0,IPADDR就必须为192.168.*.*

c.最后配置下/etc/resolv.conf:(其实这一步可以省掉,上面设置了DNS Server的地址后系统会自动修改这个配置文件。)

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

这样很简单几个步骤后虚拟机的IP就一直是192.168.110.129了。

2、图像化配置的方式:
(1)鼠标右键单击右上角的小电脑,没配置IP时,小电脑上有红叉,截图已经配过了:
 
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

(2)选择编辑连接

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

编辑-->IPV4,方法选手动,图中是已经配置过了,如果没配,地址里面什么都没有

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

点击添加,填写好地址、子网掩码和网关,同样地址和网关要在同一网段内,填写完成后点击应用。

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

可以在本机的cmd窗口中ping一下虚拟机的IP,ping通了就表示配置对了。

 

二、安装JDK
软件:jdk-7-linux-x64.rpm
下载地址:http://down.51cto.com/data/228657
1、检验并卸载系统原版本
查看原版本:
[root@CentOS64 ~]# java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (rhel-1.45.1.11.1.el6-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
查看JDK信息:
[root@CentOS64 ~]# rpm -qa | grep java
tzdata-java-2012c-1.el6.noarch
java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.x86_64
卸载已有JDK:
[root@CentOS64 ~]# rpm -e --nodeps tzdata-java-2012c-1.el6.noarch
[root@CentOS64 ~]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.x86_64
 
2、安装JDK
(1)上传新的jdk-7-linux-x64.rpm软件到/usr/local/
     windows系统向linux传输文件可以安装FileZilla工具,也可以使用WinScp,使用方式相似:安装过程网上有很多
     双击打开FileZilla :输入主机IP即centOS虚拟机的Ip,用户名root,密码为虚拟机root用户的密码,端口22,点击快速链接。
     连接成功后,左边为windows系统的文件目录,右边为linux系统的文件目录,鼠标拖动文集即可将windows系统上的文件拖到linux系统中。
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

连接成功后:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

(2)进入/usr/local
[root@CentOS64 ~ ]#cd /usr/local
查看local文件夹下的内容,会看到jdk-7-linux-x64.rpm
[root@CentOS64 local]#ls
安装JDK ,JDK默认安装在/usr/java中。
[root@CentOS64 local]# rpm -ivh jdk-7-linux-x64.rpm
验证安装,此时由于还没有配置环境变量,必须进入到/usr/java/jdk1.7.0/bin下才能执行javac命令查看JDK版本,出现版本信息表示JDK安装成功。
[root@CentOS64 bin]# java
[root@CentOS64 bin]# javac
[root@CentOS64 bin]# java -version
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
3、配置环境变量
修改系统环境变量文件,路径为绝对路径,从哪个目录下都可以进入:
[root@CentOS64 bin]# vim + /etc/profile    //"+"表示进入文件后光标直接追加到文件内容末尾
点击i键,进入插入模式,向文件里面追加以下内容:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

点击Esc退出插入模式,输入“:wq ”  表示保存并退出当前文件(:q表示单纯退出,:q!表示强制退出,不保存已修改的内容)
使修改生效
[root@CentOS64 bin] # source /etc/profile  
查看系统环境变量,看到jdk相关的环境变量已经加入
[root@CentOS64 bin ]# echo $PATH
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
这时,在任何文件下都可以执行javac、java等命令了。
[root@CentOS64 ~ ]#java -version
  VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
三、安装tomcat
软件:apache-tomcat-7.0.75.tar.gz, apache官方网站可以下载到
下载地址:https://tomcat.apache.org/download-70.cgi
注意:安装Tomcat之前需要先安装JDK,安装过程见上文。
1、将下载的软件安装包放到CentOS系统的/usr/local下,可用FileZilla工具拖拽
2、解压软件包
     进入到/sur/local目录下
     [root@CentOS64 ~ ]#cd /usr/local
     解压压缩包:参数z是解压gz结尾的压缩包,v是显示解压过程,x是解压,f是指定被解压的文件名,也可以写成-zxvf或者zxvf
     [root@CentOS64 local ]#tar -zxv -f apache-tomcat-7.0.75.tar.gz 
     ls查看,此时local下会多出一个解压好的文件夹
     [root@CentOS64 local ]#ls
     重命名解压后的文件夹为tomcat
     [root@CentOS64 local ]#mv apache-tomcat-7.0.75 tomcat
     启动Tomcat
     [root@CentOS64 ~ ]#/usr/local/tomcat/bin/startup.sh
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
3、将Tomcat加入service(作用时使得tomcat开机自启,该步骤不想tomcat开机自启的话可以跳过)
     进入/usr/local/tomcat/bin目录下:
     [root@CentOS64 ~ ]#cd /usr/local/tomcat/bin
     把catalina.sh复制到/etc/init.d下
     [root@CentOS64 bin]#cp catalina.sh /etc/init.d
     进入/etc/init.d,重命名catalina.sh为tomcat
     [root@CentOS64 bin]#cd /etc/init.d
     [root@CentOS64 init.d]#mv catalina.sh tomcat
     进入tomcat
      [root@CentOS64 init.d]#vim tomcat
     在#!/bin/sh下添加两行内容:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

  在 #OS。。。。上方添加两行内容:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

保存并退出
给tomcat增加可执行权限
[root@CentOS64 init.d]#chmod +x tomcat
配置环境变量:
[root@CentOS64 init.d]#vim /etc/profile
添加如下内容:

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

保存并退出

使更改生效
[root@CentOS64 init.d]#source /etc/profile
添加tomcat到service list
[root@CentOS64 init.d]#chkconfig --add tomcat
查看service list
[root@CentOS64 init.d]#chkconfig --list tomcat,可以看到tomcat已启用:
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

0~6是系统的7中模式,主要关注3和5,3,5开启就代表系统开机后tomcat会自启动,3是系统的字符界面,5是系统的图形界面

启动Tomcat:
[root@CentOS64 init.d]#service tomcat start
4、设置防火墙8080端口
     打开防火墙配置文件:
     [root@CentOS64 ~ ]#vim /etc/sysconfig/iptables
     增加代码: -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

保存并退出,重启防火墙:
     [root@CentOS64 ~ ]#service iptables restart
注意:这里向文件中加入 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT再重启iptables可能会报错;写成上图中黑色的形式虽然重启iptables不会报错,但是8080端口打开失败,tomcat访问不到。

iptables:将链设置为政策ACCEPT:filter                           [确定]

iptables:清除防火墙规则:                                        [确定]

iptables:正在卸载模块:                                          [确定]

iptables:应用防火墙规则:ptables-restore:line 13 failed          [失败]

解决办法:

[root@localhost~]#iptables -N RH-Firewall-1-INPUT

[root@localhost~]# service iptables save

[root@localhost~]#vim /etc/sysconfig/iptables

编辑/etc/sysconfig/iptables,添加 -ARH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

再启动iptables:[root@localhost~]# service iptables restart

5、到此Tomcat配置安装完成,检验是否成功,在Windows系统的浏览器上输入网址:
     http://192.168.128.110:8080/     192.168.128.110为虚拟机IP
     如果看到Tomcat系统界面,说明安装配置成功。
6、关闭tomcat命令
     [root@CentOS64 ~ ]#service tomcat stop
 
四、配置Redis
软件:redis-2.6.16.tar.gz
把软件安装包放到/usr/local下,可用FileZilla工具
1、解压Redis包
     [root@CentOS64 ~ ]#cd /usr/local
     [root@CentOS64 local]#tar zxvf redis-2.6.16.tar.gz 
       解压后用ls命令查看,local下出现新的目录:redis-2.6.16
2、编译源码
     进入目录 redis-2.6.16/src
    [root@CentOS64 ~ ]#cd /usr/local/redis-2.6.16/src
     编译源码:
     [root@CentOS64 redis-2.6.16 ]#make
   如果此时报错,输入命令:make MALLOC=libc看是否可以
     这里还可能会报以下错误:
     (1)没有gcc,需要安装gcc,gcc有很多依赖,因此下面的这些都过一遍,没装过的会安装,已经有的会提示已安装:
     [root@CentOS64 ~ ]#yum install cpp
     [root@CentOS64 ~ ]#yum install binutils
     [root@CentOS64 ~ ]#yum install glibc
     [root@CentOS64 ~ ]#yum install glibc-kernheaders
     [root@CentOS64 ~ ]#yum install glibc-common
     [root@CentOS64 ~ ]#yum install glibc-devel
     [root@CentOS64 ~ ]#yum install gcc
     [root@CentOS64 ~ ]#yum install make
     yum的过程中可能报错:Couldn't resolve host 'mirrorlist.centos.org'
     原因是dns没有配置正确,解决办法:
     打开/etc/resolv.conf,添加:
     nameserver 8.8.8.8
     nameserver 8.8.4.4
     search localdomain
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
保存并退出,然后重启网卡service network restart,再次执行yum...命令进行安装。
    再次yum的过程中可能会出现错误Another app is currently holding the yum ....
    解决办法:输入命令:rm -f /var/run/yum.pid
                                    /sbin/service yum-updatesd restart
    再重新执行yum相关安装命令就没问题了。
  
 3、校验编译是否正确:make test
  (1)此时可能报错:
  zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
  zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
  make[1]: *** [adlist.o] Error 1
  make[1]: Leaving directory `/data0/src/redis-2.6.2/src'
  make: *** [all] Error 2
  解决办法:先敲命令:make MALLOC=libc,然后再敲命令make test
  解决办法出处:http://www.phperz.com/article/14/1219/42002.html
     (2)此时可能报错:没有tcl8.5,需要安装tcl8.5
      将下载的安装包放到/usr/local目录下
     解压压缩包,解压后local目录下多出目录tcl8.5.10
     [root@CentOS64 local]#tar -zxvf tcl8.5.10-src.tar.gz
     进入目录:
     [root@CentOS64 local]#cd /tcl8.5.10/unix
     [root@CentOS64 unix ]#./configure     //预编译
     [root@CentOS64 unix ]make      // 编译
     [root@CentOS64 unix ]make install   //安装
 4、报错都解决后,重新make命令编译Redis源码,注意要回到redis的src目录下输入以下命令
       校验编译是否正确:make test
5、 安装:输入命令make install
6、输入命令:redis-server --version查看版本信息,如果现实Redis版本信息,则Redis安装成功。
 
五、部署web项目
     经过上面的步骤,已经准备好了部署项目的环境,可以尝试部署项目了:
     1、打开MyEclipse选择任意web项目,鼠标选中项目右键单击-->Export-->Java EE-->WAR file-->Next-->选择war包存放路径-->finish
VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)
2、找到导出的war包,放到linux系统的/usr/local/tomcat/webapps下,可采用FileZilla工具
3、启动tomcat,启动的同时会自动解压war包。
4、启动Redis(可选):进入到Redis的src目录下
       [root@CentOS64 ~ ]#cd /usr/local/redis-2.6.16/src
       [root@CentOS64 src]#redis-server
5、在浏览器输入网址:http://192.168.128.110:8080/   这时可能会页面一直等待,访问不了。
6、如果访问不了:首先是检查防火墙是否开了8080端口,具体配置见上文,确定防火墙配置没问题,进行下一步。
7、关闭Tomcat,重新启动Tomcat
         [root@CentOS64 ~ ]#service tomcat stop
         [root@CentOS64 ~ ]#service tomcat start
         查看日志:
         [root@CentOS64 ~ ]#cd /usr/local/tomcat/logs
         [root@CentOS64 logs]#tail -f catalina.out
         看启动是否报错,报什么错,对应解决,我遇到的问题如下:
        (1) 错误信息: name or service not known
                这是由于/etc/sysconfig/network和/etc/hosts文件中的主机名不对应
                打开/etc/sysconfig/network文件,查看主机名:这里主机名为CentOS64
                 root@CentOS64 ~ ]#vim /etc/sysconfig/network
       VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

      打开/etc/hosts文件,增加一行127.0.0.1    主机名,并保存退出:

      VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

         重新启动Tomcat,并查看日志
          (2)错误信息:Address already in use<null>:8080
                  原因:端口号被占用
                  解决:查看占用端口号的进程netstat -apn | grep 端口号,下图标红部分为占用端口号的进程ID
                  [root@CentOS64 ~ ]# netstat -apn | grep 8080
       VMware虚拟机安装CentOS6.4、部署web项目全过程(设置固定IP、安装JDK、Tomcat、Redis、部署项目)

    

       杀掉进程:kill -9 进程id
                  [root@CentOS64 ~ ]#kill -9 2105
                  重新启动Tomcat,并查看日志
8、如果tomcat启动日志没有错误了,应该可以访问了,访问地址http://虚拟机Ip:8080/项目名称 ,大功告成。