转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/11375100.html

一:IDEA Maven项目打包

  1、修改打包方式

  在maven项目的pom文件中,修改打包方式为:war。

  2、通过maven工具栏进行打包

  点击IDEA右侧, 有个maven侧边栏,点击展开他;

  选择你要打包的项目,点击展开:如果是聚合模块开发出来的项目,则选中根目录下pom所在项目进行统一打包;

  点击 LifeCycle:

  1)第一步:点击clean

  2)第二步:点击package

         此时会自动执行前置的生命周期,直到打包成功。

  3)第三步:查看打包结果

         打包过程中如果没发生编译失败、单元测试失败等,则会成功打包。我们可以在左侧项目大纲中,点击打包项目进行展开,找到target目录,就可以找到我们刚才打包出来的war包了。

  3、放到本地tomcat测试

  将war包放到tomcat目录的webapps,重启tomcat,通过浏览器进行访问。

  可以将war包重命名后再部署,这样的话解压出来的项目名就简单好记,maven默认打包出来的项目带了版本号等,比较长。

二:搭建服务器

1、安装JDK

  我使用的是centOS7系统,使用yum工具进行安装:yum在安装的同时会自动配置环境,无需自行设置。

  1)检查系统有无安装过jdk

rpm -qa |grep java

rpm -qa |grep jdk

rpm -qa |grep gcj

  如无输出,则说明没有安装。

  如果有输出,可以使用以下命令卸载:

rpm -qa | grep java | xargs rpm -e --nodeps 

  接下来开始安装JDK1.8。

  2)检索java1.8相关安装列表。

yum list java-1.8*

  

  3)安装java1.8.0的所有文件

yum install java-1.8.-openjdk* -y

  

  4)检查是否安装成功

java -version

  可以查看到jdk版本和位数,则成功。

2、搭建数据库

  1)安装数据库

  我使用的是PostgreSQL,具体安装步骤参考:https://www.cnblogs.com/shhnwangjian/p/8392050.html

  其他数据库安装自行网上搜索。

  2)远程连接测试是否搭建成功

  使用Navicat工具,远程连接到数据库服务器。

  3)新建数据库

  创建本项目要使用的数据库,并将本地开发过程中建表sql脚本在此处再次运行一遍。

  4)新建登录账号

  新建一个账号,用于本项目代码连接数据库使用。

3、安装tomcat

  1)前往tomcat官网下载页

  找到对应版本的下载页面,找到 tar.gz 的下载链接,右键——复制下载链接。

  2)下载压缩包

  cd到~目录,新建一个目录:web_server,并cd到这个目录。

  通过:

wget 下载链接

  下载压缩包。

  3)解压

  通过

tar -zxvf 压缩包名

  解压得到tomcat。

  4)重命名

  解压出来的tomcat带有版本号信息,名称太长。

  可以通过

mv 原名称 新名称

  进行重命名。

  5)启动并测试

  cd到tomcat/bin目录下,执行启动文件。

./startup.sh

  通过浏览器,输入服务器 ip:8080 ,能成功看到tomcat欢迎页面

4、上传war包到服务器

  可以通过传输工具连接到服务器,进行可视化拖动。

  我个人偏爱命令行操作,所以我选择使用scp命令进行操作。

  将打包的war包重命名好后,在war包所在目录处打开CMD终端窗口,输入:

scp  xxx.war  root@服务器ip:tomcat/webapps目录路径

  按提示输入root账号密码即可。

5、修改tomcat默认端口

  tomcat默认监听80端口,对于公司内部有自己机房的情况,默认内网机器的80端口是禁止暴露的。

  因此需要将tomcat监听端口改为其他端口:

  cd到tomcat/conf目录,vim server.xml:将connecter的port由8080改为你想要监听的端口。

6、修改tomcat默认启动页为项目首页

  接着第五步,在默认的host标签内插入:<Context path="" docBase="../webapps/项目名/"/> 即可。

7、重启tomcat,使配置生效

8、校验是否部署成功

  从浏览器输入 IP:端口 ,能访问到项目即成功。

  如果没有修改端口,则输入ip即可。

三:搭建负载均衡服务器

1、安装Nginx

  1)添加源

sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

  2)查看源是否添加成功

yum search nginx

  3)安装Nginx

sudo yum install -y nginx

  4)启动Nginx并设置开机自动启动

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

  5)检查是否安装成功

  浏览器输入 ip:8080 ,可以看到Nginx欢迎页面。

2、配置反向代理

  cd到Nginx安装目录,yum安装一般在 /etc/nginx下。

  cd到conf.d目录下,vim default.conf:

  1)添加要跳转到的目标地址

  在开头第一行,添加upstream:

upstream tomcat1 {
server 目标ip或域名:端口;
}

  

  2)修改ngnix监听端口

  刚才说过,部署在公司内部机房的,禁止使用80端口,如果是部署在公有云上,则无需进行此步操作。

  修改server标签内:

server {
listen 监听端口;
server_name 域名; #charset koi8-r; #access_log logs/host.access.log main; location / {
proxy_pass http://tomcat1; //此处配置代理的目标为上面配置的业务系统路径
index index.html index.htm;
}
}

3、重启Nginx服务使配置生效

systemctl restart nginx.service

4、检验是否成功

  浏览器输入Nginx所在服务器域名,能成功跳转至业务系统首页,即成功。

JavaWeb项目 IDEA+Tomcat+Nginx 部署流程的更多相关文章

  1. JFinal 项目 在tomcat下部署

    原文:http://my.oschina.net/jfinal/blog/353062 首先明确一下 JFinal 项目是标准的 java web 项目,其部署方式与普通 java web 项目没有任 ...

  2. 在腾讯云&阿里云上部署JavaWeb项目(Tomcat+MySQL)

    之前做项目都是在本地跑,最近遇到需要在在云服务器(阿里云或者腾讯云都可以,差不多)上部署Java Web项目的问题,一路上遇到了好多坑,在成功部署上去之后写一下部署的步骤与过程,一是帮助自己总结记忆, ...

  3. IDEA2017.3.3创建第一个javaweb项目及tomcat部署实战

    一.创建简单web项目 1. 选择jdk(这里有点小问题不是很理解,通过java -verbose查找出来的jdk路径在C盘,这里并不能识别,而我jdk安装的时候有自己的路径在D盘,导入后就是图中的j ...

  4. [转]intellij 13新建javaweb项目并用tomcat 7启动

    来自:http://blog.csdn.net/little__zm/article/details/19570535 对intellij不熟,找了很多文章,只这篇最为顺利.其他都有各种各校的问题,先 ...

  5. 【tomcat】手动部署动态JavaWeb项目到tomcat

    1.通过修改server.xml进行配置 1.查看项目的目录结构: tomcat运行时加载WebConmtent目录

  6. [置顶] Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署 二

    最近看到有好多童鞋比较热衷热部署,特别是多模块的项目,其实这热部署如果多模块比较大资源,容易内存溢出或者电脑卡住,并不建议这么做. 不过了解下也没有关系,这里我就在说说热部署的另外一种方法,因为我之前 ...

  7. myeclipse项目在Tomcat服务器部署问题

    错误信息:Deployment of project mybook will replace this resource. Please specify the action you wish to ...

  8. creat-react-app/dva静态项目,用nginx部署在次级域名路径(如a.com/sub/)需要注意的几点

    因为要把dist文件夹部署在一个域名的次级目录,没想到和运维同学一起折腾了一下午.. 放在这里备忘,也给后来的同学一些可查的中文资料: 1,dva/cra给你的模板index.html是在public ...

  9. [JavaWeb基础] 001.简单的JavaWeb代码和Tomcat配置部署

    简介: 其实说明白了就是J2EE应用开发,前端可以有很多的展现方式,后端由Java做逻辑运算和数据支撑.适用于创建服务器应用程序和服务,为搭建具有可伸缩性.灵活性.易维护性的商务系统提供了良好的机制. ...

随机推荐

  1. [日常] 解决github速度特别慢

    执行下面这俩命令,找到对应的IP,增加host就能解决 nslookup github.global.ssl.fastly.Netnslookup github.com root@tao-PC:/va ...

  2. JAVA反射(资源版)

    关于JAVA反射的作用可以看这篇博客(说的很详尽): https://www.cnblogs.com/jqyp/archive/2012/03/29/2423112.html 下面是关于JAVA反射的 ...

  3. AWVS破解安装

    参考大佬@pirogue的安装步骤及awvs安装包,@pandahks的安装依赖,在本地虚拟机安装awvs,艰辛历程记录如下. 虚拟机操作系统:CentOS Linux release 7.7.190 ...

  4. django获取某一个字段的列表 values values_list flat=true

    1.values() print(Question.objects.values('title')) #得到的是一个字典 <QuestionQuerySet [{'title': '查询优化之s ...

  5. day71_10_16多表断关联

    ---恢复内容开始--- 本次环境: 配置settings INSTALLED_APPS = [ # ... 'rest_framework', ] DATABASES = { 'default': ...

  6. Mybatis主配置文件配置url报错:Cause: org.xml.sax.SAXParseException; lineNumber: 15; columnNumber: 100; 对实体 "useSSL" 的引用必须以 ';' 分隔符结尾。

    <property name="url" value="jdbc:mysql://localhost:3306/shop?characterEncoding=UTF ...

  7. Redis的Sorted-Sets排行榜功能实现

    Redis的ZSet排行榜功能实现 1. 功能需求 类似给用户n张图片, 用户左滑不喜欢右滑喜欢.所以每个用户就会有一些喜欢的图片集合和不喜欢的图片集合.现在我们要做一个将按照一个算法将喜欢的排到前面 ...

  8. 物联网架构成长之路(32)-SpringBoot集成MQTT客户端

    一.前言 这里虽然是说MQTT客户端.其实对于服务器来说,这里的一个具有超级权限的MQTT客户端,就可以做很多事情.比如手机APP或者网页或者第三方服务需要发送数据到设备,但是这些又不是设备,又不能让 ...

  9. LeetCode 2:两数相加 Add Two Numbers

    ​给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字.如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和 ...

  10. 解决centos ssh连接很慢的问题

    更改配置文件vi /etc/ssh/sshd_config找到UseDNS 将UseDNS前面的#删除,并将YES改为NO,若找不到UseDNS,则手动添加UseDNS,并将其设置成No保存并重启ss ...