美文网首页服务器学习数据
记一次完整的Tomcat服务器搭建及项目部署过程

记一次完整的Tomcat服务器搭建及项目部署过程

作者: By_syk | 来源:发表于2016-12-08 22:14 被阅读2762次

    好记性不如烂笔头

    由于需要将一个小项目的后端程序从亚马逊AWS转到腾讯CVM,因此打算将完整过程记录下来,以备反刍。

    关键配置:

    • Ubuntu 14
    • JDK 1.7
    • Tomcat 8.0
    • MySQL 5.5

    一、购买云服务器

    之前一直使用的亚马逊的云服务器,虽然已是东京节点,但有时仍连接不畅。所以打算转到国内。阿里云之前已尝试过,这次选择腾讯云。要部署的项目并不大,所以购买了最低配置的服务器(1核/1GB/1Mbps),系统选择 Ubuntu,版本 14.04。

    CVM 实例

    二、远程连接

    • 使用远程终端工具 Xshell 5 连接
      Xshell 5 连接
    • 更新
    apt-get update
    
    • 和 AWS 一样,CVM 的 Ubuntu 默认登录用户是 ubuntu(ECS 实例创建默认即是 root 用户)。首次使用设置 root 用户密码:
    sudo passwd root
    
    • 切换 root 用户
    su root
    

    以下步骤均在 root 用户下操作

    三、配置 JDK

    • 从 Oracle 官网下载 JDK 1.7
    wget --no-check-certificate --no-cookie --header "Cookie: oraclelicense=accept-securebackup-cookie;" http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz
    mkdir /usr/lib/jvm
    tar zxvf jdk-7u67-linux-x64.tar.gz -C /usr/lib/jvm
    
    • 配置环境变量
      /etc/profile(另可 /etc/environment~/.bashrc
    # Set Java environmenet
    export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${PATH}:${JAVA_HOME}/bin
    
    source /etc/profile
    

    Vim 文本编辑器用起来不顺手,我选择 sz 载下来修改再 rz -y 覆盖上传(如果没有 lrzsz 工具则安装:apt-get install lrzsz

    • * 设为默认 JDK
    update-alternatives --install /usr/bin/java java $JAVA_HOME/bin/java 300
    update-alternatives --install /usr/bin/javac javac $JAVA_HOME/bin/javac 300
    
    • 检查
    echo $JAVA_HOME
    java -version
    

    四、配置 Tomcat

    • 从 Apache 官网下载 Tomcat 8.0
    wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.39/bin/apache-tomcat-8.0.39.zip
    unzip -d /opt apache-tomcat-8.0.39.zip
    

    如果没有 unzip 工具则安装:apt-get install unzip

    • 配置环境变量
      /etc/profile
    # Set Tomcat environment
    export CATALINA_HOME=/opt/apache-tomcat-8.0.39
    export CLASSPATH=${CLASSPATH}:${CATALINA_HOME}/lib
    export PATH=${PATH}:${CATALINA_HOME}/bin
    
    source /etc/profile
    
    • 检查
    echo $CLASSPATH
    
    • 测试
    cd /opt/apache-tomcat-8.0.39/bin
    chmod +x *.sh
    sh startup.sh
    netstat -apn | grep 8080
    netstat -ntpl
    ps -ef | grep tomcat
    sh shutdown.sh
    

    当默认用于 shutdown.sh 命令的端口 8005 监听启动即表明 Tomcat 启动成功。

    五、配置 MySQL

    • 从仓库下载安装 MySQL 5.5
    apt-get install mysql-server
    apt-get install mysql-client
    
    • 检查
    netstat -tap | grep mysql
    mysql -V
    mysql -uroot
    mysql> SHOW VARIABLES LIKE '%character%';
    
    • 设置字符集 UTF-8
      /etc/mysql/my.cnf
    [mysql]
    default-character-set=utf8
    [mysqld]
    default-storage-engine=INNODB
    character-set-server=utf8
    collation-server=utf8_general_ci
    [client]
    default-character-set=utf8
    

    重启 MySQL 使生效

    service mysql restart
    
    • * 允许远程访问
      /etc/mysql/my.cnf
    [mysqld]
    # bind-address = 127.0.0.1
    
    mysql -uroot
    mysql> GRANT ALL PRIVILEGES ON schttable.* to By_syk@'%' IDENTIFIED BY 'xxxxxx';
    mysql> FLUSH PRIVILEGES;
    
    Navicat 远程连接 MySQL

    六、部署项目

    • 配置 Tomcat
      ./conf/server.xml
    <!-- 使用 80 端口 -->
    <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    
    <Host name="localhost"  appBase="webapps"
          unpackWARs="true" autoDeploy="true">
          <!-- 默认主页 -->
          <Context path="" docBase="/opt/apache-tomcat-8.0.39/webapps/Hello"
                   reloadable="true" caseSensitive="false" debug="0"></Context>
    </Host>
    
    <!-- 项目 -->
    <Host name="schttable.by-syk.com" debug="0" appBase="" unpackWARs="true"
          xmlValidation="false" xmlNamespaceAware="false">
            <Alias>schttable.by-syk.com</Alias>
            <Context path="" docBase="/opt/apache-tomcat-8.0.39/webapps/SchTtable"
                     reloadable="true" caseSensitive="false" debug="0"></Context>
    </Host>
    
    • 设置共享 jar 目录,多应用共用,也减少了发布 war 包的大小,便于上传部署
      ./conf/catalina.properties
    shared.loader="${catalina.home}/sharedlibs/*.jar"
    

    由于项目采用 SpringMVC + Hibernate 框架,所以将相关 jar 包上传到此目录共用。

    • 项目恢复
      导入 MySQL 数据库备份 sql;上传项目 SchTtable.war 到 Tomcat ./webapps/ 目录,启动 Tomcat。
    • 域名解析


      解析设置
    • 测试
      访问链接 http://schttable.by-syk.com 。(需要在腾讯云后台设置好安全组,确保相关端口开放,比如 80

    测试成功,笔记也完成,收工睡觉。

    相关文章

      网友评论

        本文标题:记一次完整的Tomcat服务器搭建及项目部署过程

        本文链接:https://www.haomeiwen.com/subject/iwvsmttx.html